• Skeletal Animation


    [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.

  • 相关阅读:
    科研道路上培养的7种能力
    (OK) network diagnose tools
    linux-bridge-ping-high-latency-ebtables.txt
    houshoul
    Android x86 Virtual box with Internet and connection to adb?
    linux內核調試kmsg,dmesg
    Android Logging System
    Linux 日志级别(loglevel)详解
    Linux之绝处逢生------SysRq
    /proc/sysrq-trigger详解
  • 原文地址:https://www.cnblogs.com/tekkaman/p/3557568.html
Copyright © 2020-2023  润新知