Advertisement

Create a Facial Animation Setup in Blender - Part 1

by

In this two part tutorial, you will learn how to create a basic facial animation setup for a character in Blender. The first part covers the introduction of Shape Keys and how to create basic expressions commonly used for animation. In the second part, we'll look at how to add drivers using bones and controllers.


Additional Files:


Introduction

Basic Expressions

There are six expressions for six basic emotions - anger, happy, surprise, sad, fear and disgust. To draw or illustrate these emotions, we use the eyebrows, eyelids, and mouth. Just by changing these lines we will get very different expressions. We must also understand how these parts move and their limitations. Many other emotions such as bored, shock, devious, confused, contempt, etc. can also be achieved through various permutation and combinations of the eyebrow line, lips, and eyes.

Blender-Facial-Animation-Setup-PT1_ex01

Shape Keys

Shape keys are used where we need to animate the shape of an object by animating the vertices of the mesh, which are difficult to deform with bones. These are also know as morph targets or blend shapes.


Preparing the Mesh

Step 1

Make sure to apply the Mirror modifier before creating shape keys.

Blender-Facial-Animation-Setup-PT1_p01

While editing the mesh, we must also take care that the eyeballs are not edited, if it's not a requirement. So it's good to make them a separate object. Select any vertex of the eye by Right Clicking and then press Control-L to select the connecting mesh (the eye sphere). Now press P to make them a separate object.

Blender-Facial-Animation-Setup-PT1_p02

Step 2

Some shape keys apply to the whole face. But for some keys, we need to make individual shape keys for the left and right, e.g. one shape key for the raised left eyebrow and another for the raised right eyebrow. Now instead of creating one at time, we can create a shape key together and later split it into two different keys, one for the left and one for the right. This can be done by creating vertex groups and later we can assign a shape key to affect only a particular vertex group, say left or right.

In Edit mode, press B to enable drag select and select all the left side vertices. In the Mesh Data properties, under the Vertex Groups panel, press the + (plus) sign to add a Group.

Blender-Facial-Animation-Setup-PT1_p03

Name the vertex group Left and click Assign. Make sure the Weight value is set to 1.00

Blender-Facial-Animation-Setup-PT1_p04

Step 3

Similarly, select all the right side vertices and create a new Group.

Blender-Facial-Animation-Setup-PT1_p05

Name it Right and with the Weight set to 1.00, press Assign to assign the selected vertices to the group.

Blender-Facial-Animation-Setup-PT1_p06

Step 4

Press A to deselect all vertices. Now only select the middle row of vertices. Alt-Right Click to select a row, or Shift-Right Click to manually select multiple vertices.

Blender-Facial-Animation-Setup-PT1_p07

Select Left in the Vertex Group panel and reduce the Weight value to 0.5, and then press Assign.

Blender-Facial-Animation-Setup-PT1_p08

Similarly, assign the middle row to the Right vertex group with a 0.500 Weight value. Click on Right in the Vertex Group panel, reduce the weight to 0.500 and then click Assign. By doing this, we have assigned the middle row to both the Left and Right groups.

Blender-Facial-Animation-Setup-PT1_p09

Creating Shape Keys

Step 1

Press TAB to exit Edit mode. With the Head object selected, Press the + (plus) button to add a Shape Key. This first shape key is automatically named Basis, and is the default shape of the object. Whatever you do, try not to edit the shape of this key. Shape keys can only be created in Object mode, but we can of course edit the shape of any key by entering into Edit mode.

Blender-Facial-Animation-Setup-PT1_sk01
Blender-Facial-Animation-Setup-PT1_sk01b

Step 2

We will create a separate shape key for each individual shape, or change to the geometry. That means one shape key for the left eyebrow raised, another for the right lip smile and so on. Add another Shape Key with the + (plus) button. We will start with the upper part of the face, so name this eye-brow-angry or EB-Angry for short (or anything else you like.)

Blender-Facial-Animation-Setup-PT1_sk02

Step 3

Now we will edit this shape. Press TAB to enter into Edit mode. In the Tools shelf (press T to bring it up, if it's not there.) Check the X-Mirror option under Mesh Options. This will help us to edit the mesh using symmetry.

Blender-Facial-Animation-Setup-PT1_sk03

Step 4

Select the corner vertices of the eyebrow. Press O to enable soft selection, and use the arrow widget to pull the vertices down. Increase or decrease the effected area of the soft selection with the mouse wheel. Make sure that the eye lids are not affected too much.

Blender-Facial-Animation-Setup-PT1_sk04

Step 5

Press TAB to exit Edit mode. You will notice that the object didn't change shape, but when you switch back into Edit mode, with the shape EB-Angry selected, the geometry changes to reflect how we edited it.

Blender-Facial-Animation-Setup-PT1_sk05a

To see the affect in Object mode, change the Value slider amount up or down.

Blender-Facial-Animation-Setup-PT1_sk05b

Step 6

Now we will split the shape for the left and right side. With the EB-Angry shape selected, turn the Value slider all the way up to 1.00. Click on the bottom Arrow button in the Shape Keys panel and select New Shape From Mix. This will create a copy of the current shape.

Blender-Facial-Animation-Setup-PT1_sk06

Step 7

Select the EB-angry shape and rename it EB-angry.L (adding L for Left). In the Vertex group, select Left. This will make the shape key deform only the left vertex group. Drag the Value slider to check.

Blender-Facial-Animation-Setup-PT1_sk07

Step 8

Now select the newly created Shape Key. Rename it to EB-angry.r (R for right), and in the Vertex group select Right. This shape key will only deform the right vertex group. Drag the Value slider again to test it.

Blender-Facial-Animation-Setup-PT1_sk08

Step 9

We will now create a new shape key. Make sure all the keys are to 0.00, and then click on the + (plus) button to add a new empty shape key with the default shape. Name it EB-sad.

Blender-Facial-Animation-Setup-PT1_sk09

Step 10

Press TAB to enter into Edit mode. Select the middle part of the eyebrows and raise them. Press TAB again to exit Edit mode.

Blender-Facial-Animation-Setup-PT1_sk10

Step 11

We need to split this one again for the left and right sides. We will duplicate this key and assign one to the left, and a new one to the right. Select the EB-sad shape key and raise its value to 1.00. Make sure the other keys are set down to 0.00, otherwise the new key will be a mix of those keys/shapes. Click on the down Arrow and select New Shape From Mix.

Blender-Facial-Animation-Setup-PT1_sk11

And we will have a duplicate key

Blender-Facial-Animation-Setup-PT1_sk11b

Step 12

Select the EB-sad key and rename it to EB-sad.l (L for left). Under Blend, select the Left vertex group. This will make the shape key deform only the left vertex group. Play with the Value slider to test and press TAB again to exit Edit mode.

Blender-Facial-Animation-Setup-PT1_sk12a

Step 13

Now select the newly created Shape Key and rename it EB-sad.r (R for right). In the vertex group select Right. This shape key will only deform the right vertex group. Again, drag the Value slider to test.

Blender-Facial-Animation-Setup-PT1_sk13

Step 14

We will now create another new shape key. Make sure all the keys are at 0.00. Click on the + (plus) button to add a new Shape Key with the default shape. Name it EB-raised as we will create a shape for eyebrow raised.

Blender-Facial-Animation-Setup-PT1_sk14

Step 15

Press TAB to get into Edit mode. Select the eyebrows and raise them upward, and then press TAB again to exit Edit mode.

Blender-Facial-Animation-Setup-PT1_sk15

Step 16

We need to split this one again for the left and right. We will duplicate this key and assign one to the left, and a new one to right. Select the EB-raised shape key and increase its Value to 1.00. Make sure the other keys are set to 0.00, otherwise the new key will be a mix of those keys/shapes. With the EB-Raised key selected, click on the down Arrow and select New Shape From Mix.

Blender-Facial-Animation-Setup-PT1_sk16

And we will have a duplicate key.

Blender-Facial-Animation-Setup-PT1_sk16b

Step 17

Select the EB-raised key and rename it EB-rasied.l (L for Left). Under Blend, select the Left vertex group. This will make the shape key deform only the left vertex group. Again, play with the Value slider to test.

Blender-Facial-Animation-Setup-PT1_sk17

Step 18

Now select the newly created Shape Key. Rename it EB-raised.r (R for right), and in the Vertex Group select Right. This shape key will only deform the right vertex group. Always drag the Value slider to test.

Blender-Facial-Animation-Setup-PT1_sk18

Step 19

We will now create another new shape key (this will be the last for the eyebrows.) Make sure all the keys are set to 0.00. Click on the + (plus) button to add a new Shape Key with the default shape. Name it EB-corner as we will create a shape for the last corner of the eyebrow, just like in a "devil" smile.

Blender-Facial-Animation-Setup-PT1_sk19

Step 20

Press TAB to enter into Edit mode. Raise the corner of the eyebrows (just a little bit). And then press TAB again to exit Edit mode. Play with the Value slider to test.

Blender-Facial-Animation-Setup-PT1_sk20

Step 21

Again we will split this shape key into two. Press TAB to exit Edit mode and raise the Value slider to 1.00.

Blender-Facial-Animation-Setup-PT1_sk21

Press the down Arrow button and select New Shape Form Mix

Blender-Facial-Animation-Setup-PT1_sk21b

Step 22

Select the original shape key - EB-corner, and rename it EB-corner.l for left. Under Blend, assign the Left vertex group so that it only affects the left group. Similarly, do the same for the new shape key - Rename it EB-corner.r, and assign it to the Right vertex group.

Blender-Facial-Animation-Setup-PT1_sk22

Now all the shape keys for the eyebrows are done, and we will move onto the eyelids.


Step 23

Create a new Shape Key. Make sure that all the keys are at 0.00. Click on the + (plus) button to add a new Shape Key. Name it EL-upper-up (for the upper eyelid moving upwards.)

Blender-Facial-Animation-Setup-PT1_sk23

Step 24

In Edit mode, pull up the upper eyelid. It's also a good idea to check from a side view too.

Blender-Facial-Animation-Setup-PT1_sk24

Press TAB to exit Edit mode.


Step 25

Now again, (like we did previously) duplicate this shape key. Select the new key and increase the Value to 1.00. Click on the down Arrow button and select New Shape Form Mix.

Blender-Facial-Animation-Setup-PT1_sk25

Step 26

Rename the keys with the .L and .R extensions. Assign the Left vertex group to EL-upper-up.l, and the Right to EL-upper-up.r.

Blender-Facial-Animation-Setup-PT1_sk26

Step 27

Next create a new Shape Key for the upper eyelids closed. Make sure all the keys have a value of 0.00 before creating a new one. Click on the + (plus) button and name it EL-upper-closed.

Blender-Facial-Animation-Setup-PT1_sk27

Step 28

Press TAB to edit the geometry. Pull down the eyelids and the adjoining vertices to give it shape, and remember to check from the side also.

Blender-Facial-Animation-Setup-PT1_sk28

Step 29

Press TAB to get out of Edit mode. Again, we will duplicate it and assign one to the left and a new one to the right. Turn up the Value slider to 1.00, press the down Arrow button and select New Shape From Mix.

Blender-Facial-Animation-Setup-PT1_sk29

Step 30

Again, like the others, rename the keys with the .L and .R extensions. Assign the Left vertex group to EL-upper-closed.l, and the Right to EL-upper-closed.r.

Blender-Facial-Animation-Setup-PT1_sk30

Step 31

Now we will create a new shape key for the lower lid movement. Make sure all the values are back to 0.00. Click on the + (plus) button to create a new shape. To save time, we will name the new one with the extension .l, as in EL-lower.l.

Blender-Facial-Animation-Setup-PT1_sk31

Step 32

Press TAB and edit the shape. The lower eyelid does not go all the way up to the top. Again, check form the side also.

Blender-Facial-Animation-Setup-PT1_sk32

Step 33

Press TAB to exit Edit mode. Again we will duplicate this key to split it into the left and right shapes. Increase the Value slider to 1.00, and click on the down Arrow button and select New Shape From Mix.

Blender-Facial-Animation-Setup-PT1_sk33

Step34

Select the previous shape key (EL-lower.l) and assign it to the Left vertex group. Select the new key and rename it EL-lower.r and assign it to the Right vertex group in the Blend options.

Blender-Facial-Animation-Setup-PT1_sk34

Our eye shapes are now complete.


Step 35

We will now move onto the nose area. Click on the + (plus) button to add a new Shape Key, and rename it Nose-up.l

Blender-Facial-Animation-Setup-PT1_sk35

Step 36

Press TAB to edit the mesh. Select a few vertices around the nose and move them upwards.

Blender-Facial-Animation-Setup-PT1_sk36

Step 37

Press TAB to exit Edit mode. Duplicate this key to make one for the left and one for the right side. First increase the Value slider to 1.00 and then add a New Shape From Mix.

Blender-Facial-Animation-Setup-PT1_sk37

Step 38

Rename the new key Nose-up.r and assign the Right vertex group to it. Assign the left vertex group to Nose-up.l

Blender-Facial-Animation-Setup-PT1_sk38

Step 39

Similarly, create another Shape Key for Smile.

Blender-Facial-Animation-Setup-PT1_sk39

Step 40

Press TAB and edit the mesh to get a good smile. I use soft selection to move the surrounding cheek muscles also. Remember to check the points from the side.

Blender-Facial-Animation-Setup-PT1_sk40

Step 41

By now you should know how to split the key into left and right. Duplicate the key and assign one to the left and other to the right vertex group. Rename the keys as well.

Blender-Facial-Animation-Setup-PT1_sk41

Step 42

Create a new Shape Key for Frown and name it sad.l.

Blender-Facial-Animation-Setup-PT1_sk42

Press TAB to enter Edit mode and move the corner of the lips down. Also Rotate them a little bit. Use Soft Selection or the Proportional editing tool to help with this.

Blender-Facial-Animation-Setup-PT1_sk42b

Step 43

Drag the Value slider to 1.00 and duplicate it (create New Shape From Mix).

Blender-Facial-Animation-Setup-PT1_sk43

Step 44

Rename the new Key sad.r and assign the Right vertex group to it. Also assign the Left vertex group to the sad.l shape key.

Blender-Facial-Animation-Setup-PT1_sk44

Step 45

Create a new Shape Key (by yourself!) with the upper lip deformed, as shown in the image. This one is to express a feeling of disgust or irritation. We need to split this one into left and right keys.

Blender-Facial-Animation-Setup-PT1_sk53

Step 46

Now we will create a new shape key of an open mouth. Click on the + (plus) sign and rename it Mouth-AA. We don't need to split this one into two for the left and right sides.

Blender-Facial-Animation-Setup-PT1_sk45

Step 47

Edit the mesh to make the mouth shape open, as if saying "Aaa...". Select the lower mouth vertices and the chin area. Also select the inside part of the mouth and the lower teeth (if your model has them). In the side view, Left Click on the Jaw joint to place the 3D cursor there. Press . (period) on the keyboard to make the 3D cursor the pivot center of rotation. Press R and Rotate the jaw to open the mouth. Adjust the remaining points. Press , (comma) to revert the pivot point back to Box Center.

Blender-Facial-Animation-Setup-PT1_sk46b

We don't need to make a duplicate to split this one for the left and right.

Blender-Facial-Animation-Setup-PT1_sk46c

Step 48

Create another Shape Key for the mouth saying "O", name it Mouth-O. We don't need to split this for the left and right either.

Blender-Facial-Animation-Setup-PT1_sk47

Step 49

Add another Shape Key for "EE", name it Mouth-e (again, we don't need to split this one.)

Blender-Facial-Animation-Setup-PT1_sk48

Step 50

Now create a new Shape Key for the "mm" (you can also create ones for the "b" and"p" sounds), and rename it Mouth-M. Model the lips in such a way that they appear to say "mm". Again, we don't need to split this for the left and right.

Blender-Facial-Animation-Setup-PT1_sk49

Step 51

Another common shape key is for "f" and "v".

Blender-Facial-Animation-Setup-PT1_sk50

Step 52

Create a Shape Key for the jaw moving to the right, and rename it Jaw-right.

Blender-Facial-Animation-Setup-PT1_sk51

Step 53

Add another for the jaw moving left. Name it Jaw-left.

Blender-Facial-Animation-Setup-PT1_sk52

Conclusion

Now we have created most of the basic shape keys, which are a good starting point to learn facial animation. Play with a combination of different shape keys to create various expressions.

Blender-Facial-Animation-Setup-PT1_sk54b

Feel free to explore and create more advance shape keys if you want, like a cheek puff, twisted mouth, mouth saying "u", etc. In the next part of the tutorial, we will learn to create drivers (bones) for them, which are easy to use when animating.


Advertisement