Morph target animation

Last updated
In this example from the open source project Sintel, four facial expressions have been defined as deformations of the face geometry. The mouth is then animated by morphing between these deformations. Dozens of similar controllers are used to animate the rest of the face. Sintel-face-morph.png
In this example from the open source project Sintel, four facial expressions have been defined as deformations of the face geometry. The mouth is then animated by morphing between these deformations. Dozens of similar controllers are used to animate the rest of the face.
An arbitrary object deformed by morphing between defined vertex positions. Morph-puzzle.png
An arbitrary object deformed by morphing between defined vertex positions.

Morph target animation, per-vertex animation, shape interpolation, shape keys, or blend shapes [1] 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.

Contents

Technique

The "morph target" is a deformed version of a shape. When applied to a human face, for example, the head is first modelled with a neutral expression and a "target deformation" is then created for each other expression. When the face is being animated, the animator can then smoothly morph (or "blend") between the base shape and one or several morph targets. [2] Typical examples of morph targets used in facial animation is a smiling mouth, a closed eye, and a raised eyebrow. Early 3D videogames, such as Quake [3] and Crash Bandicoot use per-vertex animation for all character animations.

When used for facial animation, these morph target are often referred to as "key poses". The interpolations between key poses when an animation is being rendered, are typically small and simple transformations of movement, rotation, and scale performed by the 3D software. [1]

Not all morph target animation has to be done by actually editing vertex positions. It is also possible to take vertex positions found in skeletal animation and then use those rendered as morph target animation.

An animation composed in one 3D application suite sometimes needs to be transferred to another, as for rendering. Because different 3D applications tend to implement bones and other special effects differently, the morph target technique is sometimes used to transfer animations between 3D applications to avoid export issues.

Benefits and drawbacks

There are advantages to using morph target animation over skeletal animation. The artist has more control over the movements because they can define the individual positions of the vertices within a keyframe, rather than being constrained by skeletons. This can be useful for animating cloth, skin, and facial expressions because it can be difficult to conform those things to the bones that are required for skeletal animation.

However, there are also disadvantages. Vertex animation is usually a lot more labour-intensive than skeletal animation because every vertex position must be manually manipulated and, for this reason, the number of pre-made target morphs is typically limited. [1] Also, in methods of rendering where vertices move from position to position during in-between frames, a distortion is created that does not happen when using skeletal animation. This is described by critics of the technique as looking "shaky"[ citation needed ]. On the other hand, this distortion may be part of the desired "look".

For large models, vertex animation requires significant memory and storage as the position of each modified vertex must be stored for each frame. In contrast, skeletal animation requires only the storage of bone transformations for each frame.

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. The animation's target is sometimes the computer itself, while other times it is film.

<span class="mw-page-title-main">Wire-frame model</span> Representation of a 3D object with only its edges rendered

A wire-frame model, also wireframe model, is a visual representation of a three-dimensional (3D) physical object used in 3D computer graphics. It is created by specifying each edge of the physical object where two mathematically continuous smooth surfaces meet, or by connecting an object's constituent vertices using (straight) lines or curves. The object is projected into screen space and rendered by drawing lines at the location of each edge. The term "wire frame" comes from designers using metal wire to represent the three-dimensional shape of solid objects. 3D wire frame computer models allow for the construction and manipulation of solids and solid surfaces. 3D solid modeling efficiently draws higher quality representations of solids than conventional line drawing.

<span class="mw-page-title-main">Texture mapping</span> Method of defining surface detail on a computer-generated graphic or 3D model

Texture mapping is a method for mapping a texture on a computer-generated graphic. Texture here can be high frequency detail, surface texture, or color.

<span class="mw-page-title-main">Phong shading</span> Interpolation technique for surface shading

In 3D computer graphics, Phong shading, Phong interpolation, or normal-vector interpolation shading is an interpolation technique for surface shading invented by computer graphics pioneer Bui Tuong Phong. Phong shading interpolates surface normals across rasterized polygons and computes pixel colors based on the interpolated normals and a reflection model. Phong shading may also refer to the specific combination of Phong interpolation and the Phong reflection model.

<span class="mw-page-title-main">Shading</span> Depicting depth through varying levels of darkness

Shading refers to the depiction of depth perception in 3D models or illustrations by varying the level of darkness. Shading tries to approximate local behavior of light on the object's surface and is not to be confused with techniques of adding shadows, such as shadow mapping or shadow volumes, which fall under global behavior of light.

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.

<span class="mw-page-title-main">Motion capture</span> Process of recording the movement of objects or people

Motion capture is the process of recording the movement of objects or people. It is used in military, entertainment, sports, medical applications, and for validation of computer vision and robots. In filmmaking and video game development, it refers to recording actions of human actors and using that information to animate digital character models in 2D or 3D computer animation. When it includes face and fingers or captures subtle expressions, it is often referred to as performance capture. In many fields, motion capture is sometimes called motion tracking, but in filmmaking and games, motion tracking usually refers more to match moving.

<span class="mw-page-title-main">Skeletal animation</span> Computer animation technique

Skeletal animation or rigging is a technique in computer animation in which a character is represented in two parts: a surface representation used to draw the character and a hierarchical set of interconnected parts, a virtual armature used to animate the mesh. 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.

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

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

Anim8or is a freeware OpenGL-based 3D modeling and animation program by R. Steven Glanville, a software engineer at NVidia. Currently at stable version 1.01.1402, it is a compact program with several tools which would normally be expected in high-end, paid software. To date, every version released has been under 3 MB, despite the fact that it does not make full use of Windows' native interface, carrying some graphical elements of its own. Although few official tutorials have been posted by the author, many other users have posted their own on sites such as YouTube and the anim8or home page. While Anim8or was once comparable to other freeware 3D animation software such as Blender, it has seen less progression in recent years, with Blender now being more capable than before.

<span class="mw-page-title-main">Polygonal modeling</span> Object modeling method

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.

Facial motion capture is the process of electronically converting the movements of a person's face into a digital database using cameras or laser scanners. This database may then be used to produce computer graphics (CG), computer animation for movies, games, or real-time avatars. Because the motion of CG characters is derived from the movements of real people, it results in a more realistic and nuanced computer character animation than if the animation were created manually.

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.

Computer graphics lighting is the collection of techniques used to simulate light in computer graphics scenes. While lighting techniques offer flexibility in the level of detail and functionality available, they also operate at different levels of computational demand and complexity. Graphics artists can choose from a variety of light sources, models, shading techniques, and effects to suit the needs of each application.

<span class="mw-page-title-main">Seamless3d</span> Open source 3D modeling software

Seamless3d is an open-source 3D modeling software available under the MIT license.

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

<span class="mw-page-title-main">Vertex (computer graphics)</span>

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.

This is a glossary of terms relating to computer graphics.

References

  1. 1 2 3 Liu, Chen (2006). "An Analysis of the Current and Future State of 3D Facial Animation Techniques and Systems" (PDF). pp. 12–14. Retrieved January 30, 2011.
  2. Glanville, Steven (2006). "Anim8or Manual, Chapter 3 Object Editor". Anim8or. Retrieved January 30, 2011.
  3. Henry, David (December 20, 2004). "MDL file format" . Retrieved June 16, 2019.