Med Library . org

Open Source Encyclopedia

Skeletal animation

Welcome to MedLibrary.org. For best results, we recommend beginning with the navigation links at the top of the page, which can guide you through our collection of over 14,000 medication labels and package inserts. For additional information on other topics which are not covered by our database of medications, just enter your topic in the search box below:

'Bones' (in green) used to pose a hand. In practice, the 'bones' themselves are often hidden and replaced by more user-friendly objects. In this example from the open source project Sintel, these 'handles' (in blue) have been scaled down to bend the fingers. The bones are still controlling the deformation, but the animator only sees the 'handles'.

Skeletal animation is a technique in computer animation in which a character is represented in two parts: a surface representation used to draw the character (called skin or mesh) and a hierarchical set of interconnected bones (called the skeleton or rig) used to animate (pose and keyframe) the mesh.[1] While this technique is often used to animate humans or more generally for organic modeling, it only serves to make the animation process more intuitive and the same technique can be used to control the deformation of any object — a door, a spoon, a building, or a galaxy.

This technique is used in virtually all animation systems where simplified user interfaces allows animators to control often complex algorithms and a huge amount of geometry; most notably through inverse kinematics and other "goal-oriented" techniques. In principle, however, the intention of the technique is never to imitate real anatomy or physical processes, but only to control the deformation of the mesh data. [2]

Contents

Technique

This technique is used by constructing a series of 'bones,' sometimes referred to as rigging. Each bone has a three dimensional transformation (which includes its position, scale and orientation), and an optional parent bone. The bones therefore form a hierarchy. The full transform of a child node is the product of its parent transform and its own transform. So moving a thigh-bone will move the lower leg too. As the character is animated, the bones change their transformation over time, under the influence of some animation controller. A rig is generally composed of both forward kinematics and inverse kinematics parts that may interact with each other. Skeletal animation is referring to the forward kinematics part of the rig, where a complete set of bones configurations identifies a unique pose.

Each bone in the skeleton is associated with some portion of the character's visual representation. Skinning is the process of creating this association. In the most common case of a polygonal mesh character, the bone is associated with a group of vertices; for example, in a model of a human being, the 'thigh' bone would be associated with the vertices making up the polygons in the model's thigh. Portions of the character's skin can normally be associated with multiple bones, each one having a scaling factors called vertex weights, or blend weights. The movement of skin near the joints of two bones, can therefore be influenced by both bones. In most state-of-the-art graphical engines, the skinning process is done on the GPU thanks to a shader program.

For a polygonal mesh, each vertex can have a blend weight for each bone. To calculate the final position of the vertex, each bone transformation is applied to the vertex position, scaled by its corresponding weight. This algorithm is called matrix palette skinning, because the set of bone transformations (stored as transform matrices) form a palette for the skin vertex to choose from.

Benefits and drawbacks

Strengths
  • Bone represent set of vertices (or some other objects, which represent for example a leg).
    • Animator controls fewer characteristics of the model
      • Animator can focus on the large scale motion.
    • Bones are independently movable.

An animation can be defined by simple movements of the bones, instead of vertex by vertex (in the case of a polygonal mesh).

Weaknesses
  • Bone represents set of vertices (or some other object).
    • Does not provide realistic muscle movement and skin motion
    • Possible solutions to this problem:
      • Special muscle controllers attached to the bones
      • Consultation with physiology experts (increase accuracy of musculoskeletal realism with more thorough virtual anatomy simulations)

Automatic Rigging

Several solutions for the automatic or semi-automatic rigging of animated characters (FK or IK) have been developed in the last years, some of them leveraging machine learning techniques. Below a few relevant links:

Automatic Rigging and Animation of 3D Characters

Mixamo Online Animation Service - Automatic Rigging

Applications

Skeletal animation is the standard way to animate characters or mechanical objects for a prolonged period of time (usually over 100 frames). It is commonly used by video game artists and in the movie industry, and can also be applied to mechanical objects and any other object made up of rigid elements and joints.

Performance capture (or motion capture) can speed up development time of skeletal animation, as well as increasing the level of realism.

For motion that is too dangerous for performance capture, there are computer simulations that automatically calculate physics of motion and resistance with skeletal frames. Virtual anatomy properties such as weight of limbs, muscle reaction, bone strength and joint constraints may be added for realistic bouncing, buckling, fracture and tumbling effects known as virtual stunts. Virtual stunts are controversial due to their potential to replace stunt performers. However, there are other applications of virtual anatomy simulations such as military[3] and emergency response. Virtual soldiers, rescue workers, patients, passengers and pedestrians can be used for training, virtual engineering and virtual testing of equipment. Virtual anatomy technology may be combined with artificial intelligence for further enhancement of animation and simulation technology.

See also

References

  1. ^ Soriano, Marc. "Skeletal Animation". Bourns College of Engineering. Retrieved January 2011.
  2. ^ Owen, Scott (march 1999). "A Practical Approach to Motion Capture: Acclaim's optical motion capture system: Skeletal Animation". Siggraph. Retrieved January 2011.
  3. ^ "Defense". Santos Human Inc. Retrieved January 2011.