Complete Cal3d Library for Minib3d

BlitzMax Forums/MiniB3D Module/Complete Cal3d Library for Minib3d

Leon Drake(Posted 2014) [#1]
Hey guys, i am posting a module i've created which is actually an entire native port of the Cal3d animation library for minib3d

This module supports full skeletal animation, spring systems, LoD, morph animations. Morphs and skeletal animations can be played simultaneously in a mixer which allows you to play various animations at the same time using weights to create new animations from existing ones e.g. Facial expression changes while the characters head is looking around.

On top of that the spring system simulates real cloth deformation with movement and physical interactions like gravity and wind. Good for hair and loose clothing.

This module also support run time rigging. This means if you have a character model and you want to swap parts, say clothing or head, you can easily do so without a need to reload the entire model, it will instantly snap to the rigged model even during an animation.

This Cal3d module however only uses Minib3d as a VBO renderer. None of the actual model data is stored in the b3d mesh file other than the tris, verts and textures. All the animation data is handled by Cal3d and pushed into Minib3d's VBO. So if you need the character to hold a gun or something it would have to be added using the cal3d library.

I also have a working Cal3d library for Adam Redwood's Monkey Minib3d Port on Monkey.

Here is a downloadable demo of Cal3d-minib3d in action

http://vigilsoft.net/cal3dbmax/DemoCal3d.zip

And the module itself - "Currently still a WIP"

http://vigilsoft.net/cal3dbmax/c3d.mod.zip

does require threading for the loader as i wrote an asynchronous http loader for the models as well.

And a screeny



I still have to add working morphs on the Monkey version but so far it works really well on html5,flash and glfw (haven't tested android)


markcw(Posted 2014) [#2]
This looks nice, but what is the bouncing deforming box demo showing?

And a little OT, what does the .mt prefix mean? I've never seen it before. Multitouch?

Thanks.


Leon Drake(Posted 2014) [#3]
the bouncing box is using skeletal animations and morph animations at the same time. for example: doing movable facial expressions or feature sliders without disrupting skeletal deformation or vice versa.

mt. = main thread. it was threaded build because i coded in multi threaded httploader for loading assets.


markcw(Posted 2014) [#4]
Thanks. It's hard to tell that from the demo but it sounds a powerful tool. Great to have for minib3d!