This is how you can use blend shapes to make facial expressions for your character.
First, select the mesh that contains the face of your character. In this case, the torso mesh contains Liah’s face so I selected that mesh. You want to duplicate this mesh several times – one for each expression. To keep things simple, I just duplicated it 3 times to make a happy face, an angry face, and a blinking face.
For each duplicate, manipulate the mesh to make the expressions you want. Here I made faces for blinking, smiling, and angry by moving vertices around her eyes, cheeks, and mouth.
Once you’re done, select the duplicates and the main character mesh last.
Make sure you’re in Animation mode and go to Create Deformers => Blend Shape.
There’s one thing left to do before you can go ahead and animate your character. Select the main character mesh that you added the blend shapes to, left mouse click on the inputs icon and select All Inputs…
Now, to play with the blend shapes, open up Window => Animation Editors => Blend Shape.
By adjusting the value bars of your blend shapes, you can adjust your character’s facial expressions. To animate emotions, you can click on the Key buttons to key the values. You can also view and edit the values in the Graph Editor like other animations. Just click on the Select button to view the blend shape animations in the Graph Editor.
But this can be a bit annoying because you need to have the Blend Shapes window open. So let’s add this capability to a controller.
Create a nurb circle for a controller. Select it and go to Edit => Add Attribute in the Channels Box.
Fill in the name (a facial expression), select the data type as Float, and set a Minimum and Maximum value for it (which can be anything).
Do this for all of your blend shape expressions and they’ll appear as new attributes in the Channel box when you select the controller.
Now to link the new attributes to the expressions, go to Animate => Set Driven Key => Set…
For each facial expression, you want to:
1) Select the attribute name in the Driver list;
2) Select the corresponding blend shape name in the Driven list;
3) Set the value of the correponding attribute value to 0 (or the minimum value you set earlier) in the Channels Box; (If it’s not apparent in the Channels Box, select the main mesh)
4) Set the value in the Blend Shape window for that expression to 0;
5) Click the Key button;
To set the maximum value now, you want to:
1) Set the attribute value in the Channel box to 10 (or the maximum value you set earlier);
2) Set the value in the Blend Shape window for that expression to 10;
3) Click the Key button;
Once you repeat the above and set the maximum and minimum values for all the expressions you’ve made, you can animate your character’s expressions like you animate any other value.