Shape interpolation
Shape Interpolation

The shapes of objects can be interpolated using shape interpolation which is also called blend shape or 3D morphing. Advanced algorithms allow objects with different topological properties or surface structures to be interpolated. However, most implementations can interpolate only the objects which:

  • are topologically equivalent
  • have the same surface structures, i.e., the same number of polygons (or patches), the same number of vertices, and the same polygon definitions (or the same connectivity among the patches).

For most applications, the only things that can differ between objects to be interpolated are the coordinates of vertices. To make a pair of objects that meet the conditions, copy an original object and deform the copy by moving vertices without adding or deleting any vertices, edges, or polygons/patches.

Topology

Topology studies the properties of geometric figures or solids that demonstrate continuous transformations that are not changed by stretching or bending.
Topological equivalence

Let us suppose:

  1. A solid has an elastic surface and what inside the surface can shift and change its shape. Imagine: a rubber balloon filled with sand.
  2. You can stretch or shrink the solid's surface but cannot cut or glue the surface.

Then, you can turn the shape of a solid, e.g., a sphere, into a cube, a tetrahedron, a long cylinder, and many other shapes. Figures below show how a sphere can be deformed into a cube.

Let's think about a coffee mug with the above property (i.e., it has an elastic surface). Can you turn the coffee mug into a sphere using the elastic deformation? No. But you can turn it into a torus or a doughnut shape.

Using a mathematical term, we can say "A sphere is topologically equivalent to a cube: A coffee mug is topologically equivalent to a doughnut."

Blend Shape in Maya

Select objects to be blended, Create deformers -> Blend Shape. Then select Window -> Animation Editor -> Blend Shape. The interpolation value is between 0.0 and 1.0 and can be keyed. When the value is below 0.0 or above 1.0, the shapes are extrapolated. More then two shapes can be blanded.

Top: neutral, mouth open, eyes closed
Bottom: blaned shape