Advertisement

Bone animated characters

Started by October 05, 2005 04:48 AM
1 comment, last by genne 19 years, 4 months ago
Do you have any tips on what format standard to use when implementing bone animated characters into a game? Do you know a good place where to find free models? Thanks, Christian and Arvid
I don't think there are any standards. It is possible in one main way. You got a bone. A bone is just 2 vectors (B1 and B2), if the bone got a child. If the parent moves, the child moves with it, the same way. If the child moves, then the parent don't necessaraly moves along too. A vertex of a mesh can be assigned to a bone, if the bone moves, the vertex moves along. There should also be weight value for each vertex, that defines how much a vertex moves with the assigned bone.

In other words, if you have a bone defined, it should also contain a list of vertices and the corresponding weight values. A bone should also have some kind of transformation matrix to define position, scale and rotation.

Here is a small piece of C++ code of how you COULD define a bone:
struct sBONE{  Vector3 B1, B2;  int iNumVertices;  VERTEX **Verticals; // Here you got a pointer to pointer to a VERTEX struct, you could also replace this with just a list of number of a vertical.  float *Weight};


Animation is a different part though, I have done too much with this, though. I only implanted Inverse Kinetics. This is a bit harder to implant, but it gives you more freedom.
Here is a small list of some possiblities:
-Inverse Kinetics
-History Dependent
-Key framed animations // Quiet easy to implant

Try to look them up and see which suites your needs.

Regards,
-Xeile
Advertisement
Nice, thanks a lot!

I was actually looking for already complete formats to use, for example Half-lifes MDL-format, or Quake 3s MD3, but now i've at least got some more info about how bones works!

Thanks, Christian

This topic is closed to new replies.

Advertisement