Display a complex mesh in openGL

Until now I have been able to render cubes or 2D triangles, now I want to draw a real model (next step will be bones animation). I’ll use my own binary file format, but still need to choose an intermediate export format for my tool (3DSmax or Blender)

Collada is widely supported, but seems really hard to understand, preprocess and then import. For example it doesn’t seem to support shared vertices, so I should go through the primitives and find them on my own. Moreover, it seems that Blender’s Collada exporter doesn’t use triangles

Do you have any suggestion? For code reuse, the file format should support bones animation

I found .obj (wavefront) quite nice to start, as it is easy to understand and widely supported. But no bones suppport.

The .x file format supports meshs and skeletal animation. Blender can export them however I have never tried so I don’t know if their script code is complete.

Unfortunately obj doesn’t support skeletal animation, so sooner or later it won’t suit my needs

direct x files are hard to work with in non-windows environments.

I believed that Collada was straightforward to use, but actually it’s quite complex and each modeler has its own export “style”, so it’s a real mess. I’m a true beginner in openGL and graphics programming in general, so my primary purpose is to learn graphics stuffs and not wasting my time with general programming problems

Further information.
Do you waste too much memory if you draw without indices array? I ask this because it seems that Collada doesn’t supports vertex reuse. It doesn’t address the vertices with an index, but rather uses a tuple [position, texcoord, normal, …]

COLLADA would be ideal just use their parser and it should be very easy.

The .MD2 file format is a good format for to begin

After, we can see at .MD[3,4,5] Doom/Quake file formats if you want sophisticated squeletal animations

Thanks for your replies. I’m trying with Collada right now, hope this works