Importing .blend files into an openGL program

Does anyone have any good references on the current versions 2.34 file format? I have looked around and not found anything more promising than
the actual c source code for blender itself. I am a graduate student, and have been assigned to see if I can decipher the .blend files to allow students to produce models they can use in their programs easily with an open source and free tool. Any information will be helpfull, I have the manual on order from amazon as well as the game kit hopefully they will have more information in them.

AFAIK the .blend file format is a memory dump, with some additional information packed into it. i heard something of a genetic algorithm which enables back AND fortch-compatibility (so that older versions can still open new-version’s files), but i my be completely wrong here (maybe messing up with a star-trek episode :wink: ) i have no clue abt. deciphering, you might ask at the developer’s forums on what you can do easily is exporting objects made in blender via one of the many built-in scripts (.obj, .dxf, .vrml, .directX, .lwo etc. etc.) this is probably the easier method.

You should export your data into a file format that you have a loader for. I recommend OBJ for students since it’s text based and easy to write an importer for. Then just use OpenGL to draw it.



If you export to an obj file and then import into a freeware program called anim8or (runs with wine under linux). Anim8or can export “C” source code for the mesh for use in an opengl program – there is some sample code on the site but I remember it was rather difficult to find.

If the above isn’t good enough of a solution you would probably be better off using python to extract your mesh and material data (easy to do) from within blender using a script than trying to understand the file format.

Hope this helps,