Plib is too big for me, i only want to load 3DS files


i’m trying to load 3DS files, and i’ve found Plib, id does the job very well !
Unfortunately, it does a lot more ! It is a whole 3D engine ! All what I want is a function to load 3DS files and create vertex arrays. Do you know any solution simpler than using Plib? I’m aware of the existence of Lib3DS, but it does not create vertex arrays, so it is slow. Please Help !

PLib is available under the LGPL.

You can take the bits you want and release a “PLib-lite”, so long as you abide by the terms of the LGPL.

Anyways, from looking over the PLib website, it looks like that’s already been done… just use the SSG lib.


I’ve already used ssg alone, but even ssg is huge. In particular, ssg manages the tranformations itself. And there is no function like Object::Draw, as I needed. There is only a function like
So you understand that it really is not flexible.
Ideally, I need a fuction of the type :

int LoadModelFrom3DS (char *filename)
{ read 3DS file
create vertex arrays and other arrays
glNewList (list, GL_COMPLILE);
draw the model
glEndList ();
return list;

If anybody had some such function for me… Please !

[This message has been edited by Morglum (edited 07-06-2001).]

I know it is a pity make it on your own, but if you need it…

I must load a 3ds file too, so I download some 3ds file specification doc.

If you find any, tell it!

Thanks, and Luck!


you’ll find some 3ds specifiction docs on But it is really really difficult to make, if you want to obtain something that runs fast.

[This message has been edited by Morglum (edited 07-07-2001).]

Please, you all, my original question is to know where I can get a simple function that reads a .3ds file and that returns an display list. Any clear answer would be greatly appreciated. Please help !