Expression Maps

Overview

Motive uses Expression Maps to apply facial expressions to characters, either scripted with a Character Action or through a system feature such as lip sync. Expression Maps allow you to map shapes from the Motive system to any blend shapes and/or transform deltas on a character.

Note that Motive’s default expression maps are configured to use blend shapes from Character Creator. If you use your own characters you may need to develop custom Expression Maps for them.

Creating an Expression Map

You can create a new Expression Map in the Project folder using the Motive context menu:

The Expression Map editor lists each shape defined in Motive. For each shape, you can specify one or more blend shapes or transform manipulations that are applied when that shape is used in an expression:

Here you can see some of the default blend shapes used for avatars from Character Creator:

Although most of these shapes map directly to blend shapes in the skinned mesh renderer, we can see that this mapping uses a Mecanim bone to handle the mouth open/close shape:

In this case, the full range of motion of the mouth is limited to 0-20 degree rotation around the Z axis.

Using a Custom Expression Map

The default Motive Expression Map is configured for characters created with Character Creator 4. If you are using a character with a different set of blend shapes, you can create a custom Expression Map and configure the character with an Expression Map Controller that uses the custom map.

Create the Expression Map

Follow the steps above to create a new Expression Map in your project.

Edit the Expression Map to Match the Character

Map each shape in the Expression Map to the correct blend shapes/joints in your character. To make this process easier, you can set the Skinned Mesh Renderer property of the Expression Map inspector to the mesh of the character you are editing.

You can see we have mapped the browDropLeft shape to browDownLeft on this character. Do this for all settings listed.

Add Expression Map Controller to the Character

Finally, add an Expression Map Controller to your character and set the Expression Map to the custom Expression Map you just created.

Related Articles

Characters and Character Actions

Lip Syncing

Characters, Animation Controllers and Storyflow

Troubleshooting Lipsync Setup