Skeletal animation

Last updated
"Bones" (in green) used to pose a hand. In practice, the "bones" themselves are often hidden and replaced by more user-friendly objects or simply toggled invisible. In this example from the open source project Blender, 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". Sintel-hand (cropped).png
"Bones" (in green) used to pose a hand. In practice, the "bones" themselves are often hidden and replaced by more user-friendly objects or simply toggled invisible. In this example from the open source project Blender, 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 or rigging is a technique in computer animation in which a character (or other articulated object) is represented in two parts: a surface representation used to draw the character (called the mesh or skin) and a hierarchical set of interconnected parts (called bones, and collectively forming the skeleton or rig), a virtual armature used to animate (pose and keyframe) the mesh. [1] While this technique is often used to animate humans and other organic figures, it only serves to make the animation process more intuitive, and the same technique can be used to control the deformation of any object—such as a door, a spoon, a building, or a galaxy. When the animated object is more general than, for example, a humanoid character, the set of "bones" may not be hierarchical or interconnected, but simply represent a higher-level description of the motion of the part of mesh it is influencing.

Contents

The technique was introduced in 1988 by Nadia Magnenat Thalmann, Richard Laperrière, and Daniel Thalmann. [2] 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.

Technique

As described in an instructional article by Josh Petty: [3]

Rigging is making our characters able to move. The process of rigging is we take that digital sculpture, and we start building the skeleton, the muscles, and we attach the skin to the character, and we also create a set of animation controls, which our animators use to push and pull the body around.

This technique constructs a series of bones (which need not correspond to any real-world anatomical feature), sometimes also referred to as rigging in the noun sense. Each bone has a three-dimensional transformation from the default bind pose (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 bone configurations identifies a unique pose.

Each bone in the skeleton is associated with some portion of the character's visual representation (the mesh) in a process called skinning. 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 bone for the thigh 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 by 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, a transformation matrix is created for each bone which, when applied to the vertex, first puts the vertex in bone space then puts it back into mesh space. After applying a matrix to the vertex, it is scaled by its corresponding weight. This algorithm is called matrix-palette skinning or linear-blend skinning, [4] because the set of bone transformations (stored as transform matrices) form a palette for the skin vertex to choose from.

Benefits and drawbacks

Strengths

  • A bone represents a set of vertices (or some other object which represents something, such as a leg),
    • The animator needs to control fewer characteristics of the model,
      • The 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

  • A bone can only represent a set of vertices (or some other precisely defined object), and is not more abstract or conceptual.
    • Does not provide realistic muscle movement and skin motion. Possible solutions to this problem:

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. However, there are other applications of virtual anatomy simulations such as military [5] 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

Related Research Articles

<span class="mw-page-title-main">Computer animation</span> Art of creating moving images using computers

Computer animation is the process used for digitally generating animations. The more general term computer-generated imagery (CGI) encompasses both static scenes and dynamic images, while computer animation only refers to moving images. Modern computer animation usually uses 3D computer graphics to generate a three-dimensional picture. The target of the animation is sometimes the computer itself, while other times it is film.

Autodesk 3ds Max, formerly 3D Studio and 3D Studio Max, is a professional 3D computer graphics program for making 3D animations, models, games and images. It is developed and produced by Autodesk Media and Entertainment. It has modeling capabilities and a flexible plugin architecture and must be used on the Microsoft Windows platform. It is frequently used by video game developers, many TV commercial studios, and architectural visualization studios. It is also used for movie effects and movie pre-visualization. 3ds Max features shaders, dynamic simulation, particle systems, radiosity, normal map creation and rendering, global illumination, a customizable user interface, and its own scripting language.

Visual effects is the process by which imagery is created or manipulated outside the context of a live-action shot in filmmaking and video production. The integration of live-action footage and other live-action footage or CGI elements to create realistic imagery is called VFX.

<span class="mw-page-title-main">Polygon mesh</span> Set of polygons to define a 3D model

In 3D computer graphics and solid modeling, a polygon mesh is a collection of vertices, edges and faces that defines the shape of a polyhedral object. The faces usually consist of triangles, quadrilaterals (quads), or other simple convex polygons (n-gons), since this simplifies rendering, but may also be more generally composed of concave polygons, or even polygons with holes.

In 3D computer graphics, polygonal modeling is an approach for modeling objects by representing or approximating their surfaces using polygon meshes. Polygonal modeling is well suited to scanline rendering and is therefore the method of choice for real-time computer graphics. Alternate methods of representing 3D objects include NURBS surfaces, subdivision surfaces, and equation-based representations used in ray tracers.

Computer facial animation is primarily an area of computer graphics that encapsulates methods and techniques for generating and animating images or models of a character face. The character can be a human, a humanoid, an animal, a legendary creature or character, etc. Due to its subject and output type, it is also related to many other scientific and artistic fields from psychology to traditional animation. The importance of human faces in verbal and non-verbal communication and advances in computer graphics hardware and software have caused considerable scientific, technological, and artistic interests in computer facial animation.

<span class="mw-page-title-main">Soft-body dynamics</span> Computer graphics simulation of deformable objects

Soft-body dynamics is a field of computer graphics that focuses on visually realistic physical simulations of the motion and properties of deformable objects. The applications are mostly in video games and films. Unlike in simulation of rigid bodies, the shape of soft bodies can change, meaning that the relative distance of two points on the object is not fixed. While the relative distances of points are not fixed, the body is expected to retain its shape to some degree. The scope of soft body dynamics is quite broad, including simulation of soft organic materials such as muscle, fat, hair and vegetation, as well as other deformable materials such as clothing and fabric. Generally, these methods only provide visually plausible emulations rather than accurate scientific/engineering simulations, though there is some crossover with scientific methods, particularly in the case of finite element simulations. Several physics engines currently provide software for soft-body simulation.

Interactive skeleton-driven simulation is a scientific computer simulation technique used to approximate realistic physical deformations of dynamic bodies in real-time. It involves using elastic dynamics and mathematical optimizations to decide the body-shapes during motion and interaction with forces. It has various applications within realistic simulations for medicine, 3D computer animation and virtual reality.

<span class="mw-page-title-main">Softimage 3D</span> 3D graphics programme that preceded SoftimageXSI

Softimage|3D was a high-end 3D graphics application developed by Softimage, Co., which was used predominantly in the film, broadcasting, gaming, and advertising industries for the production of 3D animation. It was superseded by Softimage XSI in 2000.

Messiah is a 3D animation and rendering application developed by pmG Worldwide. It runs on the Win32 and Win64 platforms. It is marketed to run on Mac OS X and Linux via Wine. Messiah's fourth version, messiah:studio was released April 2009 and version 5.5b as messiah:animate was released November 2006. messiahStudio6 was released in April 2013. Messiah seems no longer maintained since 2013 (abandoned).

A vertex in computer graphics is a data structure that describes certain attributes, like the position of a point in 2D or 3D space, or multiple points on a surface.

Pose space deformation is a computer animation technique which is used to deform a mesh on skeleton-driven animation. Common use of this technique is to deform the shape of a mesh according to the angle of the joint bent. Although the name is commonly called Pose space deformation on many scholarly articles, 3D animation software rarely uses that name. On Autodesk Maya, it's implemented under the name Pose Deformer, and on Blender, it's implemented as Corrective Shape Keys. The first famous application of this technique was the cloth's movement on the first episode of the animated film The Animatrix.

<span class="mw-page-title-main">Morph target animation</span>

Morph target animation, per-vertex animation, shape interpolation, shape keys, or blend shapes is a method of 3D computer animation used together with techniques such as skeletal animation. In a morph target animation, a "deformed" version of a mesh is stored as a series of vertex positions. In each key frame of an animation, the vertices are then interpolated between these stored positions.

<span class="mw-page-title-main">3D modeling</span> Form of computer-aided engineering

In 3D computer graphics, 3D modeling is the process of developing a mathematical coordinate-based representation of any surface of an object in three dimensions via specialized software by manipulating edges, vertices, and polygons in a simulated 3D space.

<span class="mw-page-title-main">Computer-generated imagery</span> Application of computer graphics to create or contribute to images

Computer-generated imagery (CGI) is a specific technology or application of computer graphics for creating or improving images in art, printed media, simulators, videos and video games. These images are either static or dynamic. CGI both refers to 2D computer graphics and 3D computer graphics with the purpose of designing characters, virtual worlds, or scenes and special effects. The application of CGI for creating/improving animations is called computer animation, or CGI animation.

<span class="mw-page-title-main">Nadia Magnenat Thalmann</span> Computer scientist

Nadia Magnenat Thalmann is a computer graphics scientist and robotician and is the founder and head of MIRALab at the University of Geneva. She has chaired the Institute for Media Innovation at Nanyang Technological University (NTU), Singapore from 2009 to 2021.

<span class="mw-page-title-main">Daniel Thalmann</span>

Prof. Daniel Thalmann is a Swiss and Canadian computer scientist and a pioneer in Virtual humans. He is currently Honorary Professor at EPFL, Switzerland and Director of Research Development at MIRALab Sarl in Geneva, Switzerland.

Rendez-vous in Montreal is an animated film that used advanced computer techniques to achieve such effects as modelling the film stars Marilyn Monroe and Humphrey Bogart. The film was directed by Nadia Magnenat Thalmann and Daniel Thalmann and produced with a team of 10 people. Specific interactive software [1] was developed that allowed designers in 1987 to interactively use commands to generate the sequences. The main purpose of Rendez-vous in Montreal were to show that true synthetic actors can be created. This film represented a technological breakthrough both on the software side and the film itself.

This is a glossary of terms relating to computer graphics.

Virtual humans are simulations of human beings on computers. The research domain is concerned with their representation, movement and behavior. There is a wide range of applications: simulation, games, film and TV productions, human factors and ergonomic and usability studies in various industries, clothing industry, telecommunications (avatars), medicine, etc. These applications require different know-hows. A medical application might require an exact simulation of specific internal organs; film industry requires highest aesthetic standards, natural movements, and facial expressions; ergonomic studies require faithful body proportions for a particular population segment and realistic locomotion with constraints, etc. Studies also show that human-like appearance of virtual humans show higher message credibility than anime-like virtual humans in advertising context.

References

  1. Soriano, Marc. "Skeletal Animation". Bourns College of Engineering. Retrieved 5 January 2011.
  2. Magnenat-Thalmann, Nadia; Laperrière, Richard; Thalmann, Daniel (6–10 June 1988). "Joint-Dependent Local Deformations for Hand Animation and Object Grasping". Proceedings of Graphics Interface '88. Edmonton: 26–33.
  3. Petty, Josh (26 July 2018). "What is 3D Rigging for Animation & Character Design?". Concept Art Empire. Retrieved 29 November 2018.
  4. Kavan, Ladislav. "Direct Skinning Methods and Deformation Primitives" (PDF). Skinning.org. University of Pennsylvania.
  5. "Defense". Santos Human Inc. Retrieved 5 January 2011.