In skeletal animation, each vertex was linked to one or more bones with associated weights. In morphing animation, however, two or more positions are stored per vertex and are simply blended using linear interpolation (LERP). Each predefined vertex position is called a morph target. Once you have a list of morph targets, you can blend between them using weights (just as in skeletal animation), as shown in the following formula:
v1 = [x1, y1, z1]
v2 = [x2, y2, z2]
v = v2 · p + v1 · (1 – p)
The equation above describes how to create a blended vertex v between the two morph targets v1 and v2 (using simple LERP). This same example is also illustrated in Figure 8.1, where a new vertex position is calculated with a weight ...