How to import 3ds models for use in OpenGL

I found a number of free 3ds models that I would like to use in a small OpenGL game I’m writing.

What are the various options available for doing this?

I’m a college student w/o much of a budget, so I can’t afford expensive 3D visualization programs.

I appreciate any help that you guys can offer.


Just look on the web for the file format definition.

Or I am sure someone somewhere as posted a 3ds loader.

I don’t directly load 3ds file. I have 3d studio max and I just export them to a .ASE wich is an ascii file of all info of the model.

It is very easy to make a loader from that because you have a file an the file format in front you!!

I am sure there is a free modeller on the web that can do that conversion.

Eric Chan: Forget .ASE ! I have a .3ds to .msh converter. Mail to, I´ll send it than…

I am just a beginner and see this question posted alot, I mean ALOT!. I, too, have 3D MAX and hope to try this soon myself. You would think that Kinetix, *discreet, etc. would have a definitive answer to this question. Or do they? Does anybody know?

What do you mean a definitive answer?

You just get the file format and read it. The only difficulty is understanding the file format.

yep, all those ficken CHUNKS, i hate them !

Odd no one mentioned this software, anyway here is the link:



I’ve heard about this 3D exploration before, and I just wonder which format should I convert the objects (.3DS) to??? So I can use them in my OpenGL game? Is it smart to convert them to .cpp? Wouldn’t it be smarter to import them with code???

I too am writing a video game for my senior project in college and would like to import models i’ve created in 3dsmax. It looks as if i’ll be using ASE format since it’s all self-documented, but I am curious if there are any pre-coded algorithms for interpretting these files in preperation for rendering in OpenGL. Anyone?

Hi guys!
I wrote a func that loads 3ds files… it’s not complete (doesn’t read info about materials) but allows to import an object and change it without recompile your app…
An old webpage with a similar function (for a dos engine, but you can easily convert it) is
the function is at the bottom of the file, the constant definitions are in the types3d.h file.
Now I wrote a working opengl version, but it’s not on the web… mail me (see the profile) if you think it would be useful.
I’ve got not enough time but it shouldn’t be difficult to load materials…
That’s all, bye!


you can use polytrans.
you can find it on
with it you can convert your 3dmodels
(maya,3dsmax…etc) to opengl c source code.

it also has a plugin for 3dsmax.

or, you write your own export-plugin, like i did. user the asciiexport plugin from the maxsdk, that’s good to understand 3dstudio’s plugin-interface.
simply replace the fprintf’s with your fwrite()-stuf, so you can create your OWN fileformat, and need not to create a text-parser or so…but don’t forget to change the fopen! the file is by default opened for writing and TEXT mode, use wb instead of wt!!! it’ll save you some hours of debugging 'n stress



I’m creating a game, just like the next guy. My site is devoted to creation of models, animating them etc. I’m happy to document what I’m doing ( including importing of models, Wavefront mainly, 3DS if need be ). If you’d like me to do this, let me know by using my forum:

Click on Forum to be brought to the area, let me know what you want to see. BE specific as possible please, no “Give me code to create a 3D procedural universe complete with coca-cola” requests please.


Hi Eric,
have you been to It has lots of information about tons of different filetypes. I just made my first OBJ importer from the OBJ description I found on wotsit.

Hope that helps,