Facial Animation
Describing the motions of a face.
There are various approaches to this but many take the approach of using a parametric-curve and interpolate parameters (eg. vertex position) over time.
[see page 25, Interpolate Vertex Positions]
- Make shape.
- Move vertices in shape to create a new pose for a new frame.
- Repeat.
- Store changes between frames as a PC and interpolate between them.
Warn: There is the issue of [see page 8, scrambling] when moved positions of the face scrambling together and making a mess. You can alleviate this by specifying the angle between two lines doesn't vary too much or by adding a skeleton to make sure the shapes doesn't deform too much.
Note: We may need a [see page 11, second] curve to specify the speed at which we move through the position curve. This is needed for when the speed of an animation isn't constant.
Note: There are infinite number of ways to transition between keyframes in a [see page 13, rotation]. We can get around this by using quaternions.
Regionalisation
[see page 26, Define] a neutral face and then a bunch of other expressions, assign weights to different regions of the face (specify how weights should vary) and then interpolate between them.
Blendshapes
Create a face and then deform it over time. The kind of deformity indicates how transitions should be animated. The program used to create and edit facial poses is called a [see page 27, facial-rig].
Motion Capture
Record a real human face and then transfer it to a synthetic character.
Can be:
Type | Description |
---|---|
Marker | Place markers on the face and measure changes over time. |
Markerless | Point at face and detect changes over time. |