Using Blend Shape and Set Driven Key for Muscle deformations and Facial Expressions.

 

 

My name is Larry Neuberger and I am a professor at Alfred State College in Alfred NY. I created these handouts to use in my classes and most of my students found them to be helpful. I now decided to submit them to be published on the web hoping they can help others as well.

 

Blend Shape and Set Driven Key are two excellent tools for deformations and facial expressions. In the following file we will go over in detail how to use these tools to the best of their advantages to create better animations and poses. First we will go over using blend shape and set driven key for muscle deformations. Then we will go over using just blend shape for facial expressions.

 

 

Blend Shape and Set Driven Key for Muscle deformations

 

The best way to demonstrate the benefit of these tools is to show you how to control the flexing of a characters’ muscles without having to set keyframes for individual objects or doing any unnecessary extra work.

 

NOTE: for best results using blend shape, do all work BEFORE binding the skeleton. If you use blend shape after binding the skeleton, your results will not be accurate and deformations will not update correctly.

 

 

In order to be successful with blend shape you want to use the same geometry over and over. I.E. if you only have one alteration, duplicate once. If there are 5 separate pose alterations, you need five copies of the geometry. For this example, we will be working with one deformation.

 

To start I took the arm of the character and duplicated it one time and move it off to the side (Fig. 1.)

 

Fig. 1.

 

Once your duplicate is made, go to the component mode so your CV’s are shown and sculpt the new shape you want the arm to look like after movement. In this case I want the bicep and forearm to bulge a bit and have less of a crease in the elbow area when bending (Fig. 2 - 3.).

 

         

                        Fig. 2.                                                           Fig. 3.

 

Fig. 2 shows the duplicated arm in component mode ready to be sculpted. Simple move, scale, and/or rotate the CV’s needed to get the shape you want.

 

Fig. 3 shows the duplicated arm sculpted to my specifications. You can see in this figure the bicep and forearm bulged a bit.

 
 

 

 

 

 

 

 


Once it is sculpted to the way you like we are ready to do the blend shape to control it. This is the easy part. First I would name the objects. The original I called R_Arm and the duplicate I called R_Arm flex. After your geometry is labeled it is time to use the blend shape tool. This is the easy part. Select the duplicated object/s (in this case R_Arm flex), then shift click and select the original object as well (R_Arm). (Fig. 4.)

Once they are all selected go to Deform > Create Blend Shape . (Fig. 5.)

 

         

Fig. 4.                                                      Fig. 5.

 

 

 

 

Once the option box is open, name the blend shape node and press create (Fig. 6.)

 

Fig. 6.

 

It looks like nothing happened, but something did. To check your blend shape, go to Window > Animation Editors > Blend Shape (Fig. 7.) and you will see the control slider where you can control the deformations. Drag the slide bar up to test the blend shape (Fig. 8.)

 

         

Fig. 7.                                                       Fig. 8.

 

If everything worked properly you should see the original arm deform to the shape of the sculpted duplicate as you drag the slide bar up. The nice thing about blend shape is that as you slowly drag the bar upward, the object will slowly deform to a shape between the original and new shape. And this is pretty much all there is to know about blend shape. It’s really quick, easy and effective.

 

Now we will discuss using the Set Driven Key tool to control the deformation of the arm when joints are moved.

 

 

 

 

 

Using Set Driven Key to control the deformation of a Blend Shape

 

Learning how to use Set Driven Key can be very frustrating and tricky but once learned it is an excellent tool to use. Hopefully I will be able to explain this tool in an easy to understand way. Basically what we are going to do is tell the blend shape to deform when the elbow joint is bent, thus avoiding having to do extra animation and keyframing to get the same effect.

 

NOTE: using the set driven key to control the blend shape should be done AFTER the skeleton has been bound.

 

First select the effector joint. In this case the elbow joint, (Fig. 9.) then go to Animate > Set Driven Key > Set . (Fig. 10.)

 

         

Fig. 9.                                                       Fig. 10.

 

The set driven key window should be open with the selected joint showing highlighted on the bottom (R_Elbow). Click on load driver to bring this to the top (Fig. 11.).

NOTE: The driver is what will control, or drive, the change in shape.

 

Fig. 11.

 

 

 

 

Next we want to choose what translation will affect the blend shape. In this case we want the blend shape to deform when the arm is rotated around the Y joint. (Fig 12.)

 

Fig. 12.

 

 

Next we want to set what the driver will affect. This will be the driven object. Simply click on the object you want effected by selecting it in the window or going to the outliner. In this case I want to select the blend shape I created. Go to Window > animation editors > blend shape and press select to select the blend shape (Fig. 13.) When that is selected click on load driven in the set driven key window (Fig. 14.)

 

         

Fig. 13.                                                               Fig. 14.

 

 

 

After that we want to choose the exact blend shape to be deformed. To the right of the load driven section you should see the name you gave your blend shape. Click that as well. (Fig. 15.)

 

Fig. 15.

 

Now the set driven key is all ready to go, but first let me try to explain briefly what is going on.

The driver is the elbow. This is saying that whenever the elbow joint rotates around the Y-axis, the arm deformation will take place.

 

The driven is the blend shape. This is what will be deformed when the driver.

 

We have the window to the left set up saying that when the elbow joint rotates around the Y-axis, the rightArmFlex blend shape will deform to my specifications.

 

 

 
 


 

 

 

 

 

Once the driver and driven windows are all complete, press the key button to set the first keyframe at the static pose. Next, rotate the arm to the maximum rotation. For this example I chose 90 degrees around Y-axis. (Fig. 16.)

 

Fig. 16.

 

Now open the blends shape window by going to window > animation editors > blend shape (Fig. 17.) When the window opens, change the blend shape slider to 1.000 and then go back to the set driven key window and press key (Fig. 18.).

 

         

Fig. 17.                                                             Fig. 18.

 

 

 

We have now set keys for the static pose as well as the maximum rotation where the deformation will take place. Now close all the windows and test it. Select the elbow joint, or the IK handle, and rotate the elbow joint around the Y-axis. You should see the deformations. If you are using IK, drag the IK handle in towards the body and you should see the same change. (Fig. 19 - 21.)

 

         

                       Fig. 19.                                                         Fig. 20.

Figure 19 shows the elbow joint set at no rotation in the static pose.

 

Figure 20 shows the same joint rotated 45 degrees on the Y-axis. This shows a slight deformation taking place.

 
 

 

 

 

 

 

 


Fig. 21.

 

Figure 21 shows the arm at maximum rotation (90 degrees on the Y axis).

Notice that the deformation is at it’s maximum as well. As you can see, the deformation

Changes based on the rotation. A slight rotation will deform the arm slightly.

 

That is it for blend shapes and set driven key. Set driven key takes a while to get the hang of but is an extremely useful animation tool that can save you lots of time by avoiding extra unnecessary keyframing.