Tekkaman

导航

 

[Skeletal Animation]

  Skeletal animation is the use of “bones” to animate a model. The movement of bones themselves can cause changes to other bones.

  

 

Advantages:

   1, It's very important to the pro-grammers, is that such animations take up less storage space. Instead of storing a new set of vertices for each frame, all that needs to be stored is the rotation and translation of the bone. 

   2. A good skeletal animation system will cut the time the artists need to animate their models.

   3. it is possible to reposition them in real-time if you want, allowing needed animations to be created during runtime.

[Inner Workings of Skeletal Animation]

 1. when you move a bone “farther up” in your arm, everything below it moves as well. This is one of the most basic concepts of skeletal animation.

 2. The root joint is the ultimate joint in the model. Every other joint eventually finds its way back to this one joint. Any operations done on the root joint, whether they be translation or rotation, affect every vertex in the model. You can think of the root joint as the joint that controls all other joints.

   

 3.  A joint can have parent and child joints. The parent of a joint affects everything it does. The parent’s rotations and translations are all taken into account when computing the current joint’s new position.

 4. Instead of each keyframe containing its own copy of the vertices, a skeletal animation keyframe or boneframe contains a transformation, both rotation and translation, generally in the form of an X,Y,Z value for translation, and three values containing rotation around the X,Y, and Z axes, respectively.

 5. Relative Matrix & Absolute Matrix

[Attaching the Mesh]

 1. Each mesh vertex stores an index into the joint array to signify that it is attached to a certain bone.

    

  Each model contains just one set of texture coordinates and triangle information. Just because the positions of the vertices change does not mean the triangle indexes and texture coordinates have to. This means you don’t have to worry about them once you set them up.

  Normals are another story. Because the orientation of the polygons and vertices change, so will the normals. If you are using just face normals, you need to recalculate them manually every frame before sending them to the renderer. However, if you calculated vertex normals at the beginning, you are in luck. Vertex normals do not have to be completely recalculated after transformation. They can be transformed by the same matrix as the vertices were. The only difference here is that you do not take in account translation.

posted on 2014-02-20 14:23  Tekkaman  阅读(361)  评论(0编辑  收藏  举报