It's free to join Gamasutra!|Have a question? Want to know who runs this site? Here you go.|Targeting the game development market with your product or service? Get info on advertising here.||For altering your contact information or changing email subscription preferences.
Registered members can log in here.Back to the home page.

Search articles, jobs, buyers guide, and more.

by Gavin Moore
Gamasutra
[Author's Bio]
April 18, 2001

Breaking It Down

Emotions and the System

The System

Printer Friendly Version
 
Discuss this Article

 

 

 

Letters to the Editor:
Write a letter
View all letters


Features

Talking Heads: Facial Animation in The Getaway

Emotions and the System

Creating the emotions on your base skeleton is the next step. Which emotions should the system incorporate? We use the six universal emotions, some physical emotions, a phoneme set and a whole load of facial and head movements. The system inside Maya runs off the back of three locators. Each locator controls a different set of Set Driven Keys. A locator in Maya is a Null object that can have attributes added.

The first locator controls expressions. Each of the following is an attribute on the locator: sadness, anger, joy, fear, disgust, surprise, shock, perplexed, asleep, pain, exertion, and shout. Each attribute has a value which ranges from 0 to 10.

The skeleton is set to a neutral pose which is keyed at zero on all the emotion attributes. Then the joints are scaled, rotated, and translated into an expression, for example, "sad." Using Maya's Set Driven Key, this position is keyed onto a value of 5 on the sadness attribute. Then at a value of 10, "crying open mouthed" is keyed, giving us a full emotional range for sadness. Now the face is set up so that Maya can blend from a "neutral" pose to one of "sad" and then continue on to "crying."

Sadness attribute keyed at a value of 0, 10, and 15.

 

For each emotion attribute, several different keys are assigned as above. This gives the character a full range of human emotions. These emotion attributes can then be mixed together to achieve subtle effects.

A mixture of joy and sadness produces a sad smile, while anger and joy produce a wicked grin. The process is additive, which means that mixing emotions over certain values starts to pull the face apart. A good rule of thumb is never to let the total of the attributes exceed the maximum attribute value. As we have keyed ours between 0 and 10, we try never to exceed 10. If you mix three emotion attributes together and they have equal values then each cannot exceed 3.3. There are attributes that can be mixed at greater levels, but trial and error is a great way of finding out which you can mix and which you can't.

Phonemes and Visemes

"A phoneme is the smallest part of a grammatical system that distinguishes one utterance from another in a language or dialect." -- Bill Fleming and Darris Dobbs, Animating Facial Features and Expressions

Basically, a phoneme is the sound we hear in speech. Combining phonemes, rather than letters, creates words. The word "foot" would be represented by "f-uh-t."

Visual phonemes (visemes) are the mouth shapes and tongue positions that you create to make a phoneme sound during speech. The common myth is that there are only nine visual phonemes. You can create wonderful animation from just these nine; however, there are in fact 16 visual phonemes. Although some may look very similar externally, the tongue changes position.

Our second locator controls the phonemes. They are assigned in exactly the same way as the emotion attributes. An exaggerated form of each phoneme is keyed at 10. When creating the lip-synching we generally only use values up to 3.

The phoneme set shown is Anglo-American. This can be replaced with any phoneme set from around the world. You can conceivably make your character talk in any language you wish.

Two rules for the use of visual phonemes:

  • Never animate behind synch. Do not try to animate behind the dialogue. In fact it's better to animate your phonemes one or two frames in front of the dialogue. Before you can utter a sound you must first make the mouth shape.

  • Don't exaggerate. The actual range of movement while talking is fairly limited. Study your own mouth movements.

Talking Heads tries to simulate realistic facial movements, and "less is more" is true for all parts of the system. The mouth doesn't open much at all while talking, so don't make your visual phonemes exaggerated.

Specials

The third locator controls aspects of the face that are so natural that we don't even think about them. These attributes are essential if you want to achieve realistic facial animation.

Blinking. A human blinks once every four seconds. This timing can change according to what emotional state the character is in. If anger is your dominant attribute then the blink rate should decrease to once every six seconds. The reason behind this is physical; the eyes open wide in anger, achieving a glare. If you are acting nervous then the blink rate increases to once every two seconds. This reaction is involuntary. Blinking brings realism to your characters but also emphasizes a particular emotion or mood.

Facial shrug and raising eyebrows. These attributes are generally used when the character is silent, listening to a conversation, etc. The human face is never static, it's constantly moving. This movement can take many forms. Slight head movement, constant eye movement and blinking are excellent at keeping the character alive. Raising an eyebrow or performing a facial shrug can be used in conjunction with emotion attributes to add a little extra emphasis to the emotion.

Nodding and shaking the head. Whenever we encounter a positive or negative statement, we either nod in agreement or shake our head in disapproval. These are involuntary acts and the quickest ways to state your point of view without opening your mouth. Note that the neutral position of these two attributes is set at 5. This allows the head to move in four separate directions, up, down, left, and right.

Random head motion. We realized very quickly when animating our heads that when you talk you are constantly moving your head. The random head attribute simulates this slight movement.

Breath. The breathing attribute is set at several different positions. It can simulate slight breathing to full gasps.

The Fourth Locator

There is one final locator that I haven't yet mentioned. This locator is called the "look at" and controls what the character is seeing. The joints that control the eyes are constrained using aim constraints in Maya. This forces the joints to always track/point at the "look at" locator. You can then use the locator to control the character's point of view. You can animate this locator and enable your character to glance away during a conversation. The angles of the eye joints are linked via an expression with the head joint. If the eyes are forced to rotate more than 20 degrees to follow the "look at" locator, the head rotates to compensate. We found this to be very realistic, mimicking the movement of the head (Figure 13).

Tips and Tricks

Here are a few additional pointers for animators when animating facial expressions.

You must have two frames to be able to read it! When you are laying down keyframes for your lip-synching, always make sure that the consonants last for a minimum of two frames at 24 fps. Obviously, if you are running at 60fps on PS2, then triple this. Any phoneme that is a consonant, such as p, b, m, f, or t, must be keyed in this way. This rule cannot be broken; the mouth must be in a closed state for the two frames. If you don't make sure of this then you will not be able to read what the character is saying. If you have no time to fit this in, steal from the previous word.

Make sure your animation is ahead of your timeline. The easy way to do this is to animate to your sound file. When you are happy with your animation and lip-synching, move the sound forward in the timeline and make sure that the animation starts one to two frames before the sound. You cannot utter a peep unless you have made the correct mouth shape. This will improve your lip-synching.

Subtlety is king. I cannot stress too much how important this is. The urge once you have created your system is to go mad. The human face is a subtle machine, keep your movements to a minimum and your animations will look much more realistic.

Move the eyes. If you want to keep your character alive keep the eyes moving. When we are talking to someone we spend 80 percent of our time tracking their eyes and mouth and 20 percent glancing at their hands and body.

Head synch is almost as important as lip-synch. Every word and pause should have a separate head pose. We use random head motion to achieve this. Some words need accenting or emphasizing. Listen to your sound file and pick out the words that are stressed, these are the ones to which you should add extra head movement.

________________________________________________________

The System


join | contact us | advertise | write | my profile
news | features | companies | jobs | resumes | education | product guide | projects | store



Copyright © 2003 CMP Media LLC

privacy policy
| terms of service