Skeletal Animation

Hey everyone.

I’m involved in a project that uses a human avatar and we’re willing to use skeletal animation to animate the avatar. The first idea was to use the Cal3d library to export the models from Blender, but we coudn’t manage it, since it’s really old and poorly documented.

What do you guys suggest to export the Blender (or any other modelling program, since we’re still able to change) model to a format that can be used on my OpenGL aplication?

Thanks in advance!

Look into Deep Exploration to convert models from one format to another. It can output a model as OpenGL subroutines, so you don’t have to write any code to read the model into your OpenGL simulation. Go to their website to find out about pricing. It isn’t cheap. A one month trial version is available, but all export options are disabled.

If D.E. doesn’t work for you, I find Wavefront .obj to be a fairly straightforward format to work with. Most model converters can write .obj. Many modelers directly export to .obj format. It’s an ascii format that is very easy to understand.

Good luck.

Something to keep in mind with Blender is that there is a Python API, so you can write your own export scripts, if such a task is worth the effor to you. You can certainly duplicate and modify the existing scripts to suit your needs.

If you know some python, writing your own exporter should not be too difficult. I wrote my own exporter from Blender to XML.

Blender 2.5 is just around the corner, doesn’t it have COLLADA support? I think there are some collada viewers for openGL out there. I initially wanted to use COLLADA but the Blender support for it so far is apparently not complete.

For simple, you can use COLLADA to save and import data, including mesh/skeleton/keyframe.

The algorithm of Cal3D is not old, It’s really a simple API and it supports everything you need to animate your characters. Cal3D is well documented and the document covers all of its features. However exporting the model is difficult-You need to export the skeleton, meshes, materials and animations independently.I used Cal3D in a commercial game and it worked fine.

Thanks for all your answers guys!