Skinned Ragdoll

Started by
3 comments, last by bzroom 18 years, 5 months ago
Hi all, I was wondering how to do skinned ragdoll? How to set physic objects to skinned model? am I have to set physics joints, or rigid bodies rotations to animated model joints? And what about positions? Move only main joint? Maybe there is any tutorial about this (no matter with what ODE, Tokamak etc)? Thanks a lot.
Advertisement
usually your physics object is some subset of your model. the joints in your physics model would correspond to joints within the skinned model. usually the major joints and the secondary joints(stuff for small things like fingers or muscle movement) are handled with the animation system.
I figured the thing in this way :

A ragdoll physics system is no different from (for example) a vehicle physics.

Both of them contains nodes which are connected in some hierarchial level. Of course, vehicle requires node controllers in order to move or to have turrets to turn etc. So in that sense ragdoll is even simpler since basically it doens't need any controllers. Skin is no different case since it is just a mesh which takes transformations from several nodes.

So, I assume that you have some sort of animation controller system which animates the character. In the moment where ragdoll is switched on, the system initialises the physical nodes for the selected bones (not all bones need to be ragdolled) and creates the links between nodes and their parents.

I wrote manually the link data for my ragdoll (and vehicles). You can start by just creating the nodes for the character and see it "fall apart" when the ragdoll is initialised. I had lots of fun with this :D
Important things for debugging are that you can actually see how the nodes are in the world. So create a system for drawing different kind of primitives that your physics library supports.

My Ragdolls blew up quite a many times when their nodes intersected a bit too much. With Tokamak it is important to set that nodes don't collide with connected nodes.
Quote:Original post by Anonymous Poster
Important things for debugging are that you can actually see how the nodes are in the world. So create a system for drawing different kind of primitives that your physics library supports.

My Ragdolls blew up quite a many times when their nodes intersected a bit too much. With Tokamak it is important to set that nodes don't collide with connected nodes.


I know at least in ODE you perform a quick test on the two colliding nodes and determine if they are connected by a joint. If so dont collide them.

edit: I guess this could provide some unwanted results such as arms rotating through themselves.

This topic is closed to new replies.

Advertisement