Character facial rig
A dual normal map based system was used for face deformation, one for low frequency changes, such as how dimples and cheek creases work, and a second high frequency map for how wrinkles and crows feet work with a mask hooked to different sliders to turn them on/off. It looked and worked great.


There is an automated joint driven 'soft eyes' setup for realistic eyelid movement when eyes were open or closed. This helps convey realism, and keeps the animators from having to deal with it since it is fully automated. This setup could be blended into a 'look at' constraint, so if/when the animator needed to have the eyes to follow a moving object it could easily be handled.

A 'sticky lips' mode was included with a 'left, right, center' slider so the lips could stay shut while the jaw moved. This could be manually overriden, or the sliders animated to adjust the amount during jaw movement. It limited translation but allowed rotation for SDK movement, so it was possible to roll the lips into the mouth while stuck together with the jaw moving. It was a pretty cool and functional setup.

This is a collection of face controls with several of the fine tune features shown.

There are 3 layers of controls. The first was centered around the mouth and nasal labia which constrained the joints between the jaw and head to give an automatic and realistic movement when the jaw opened. On top of that was a layer of Set Driven Key joints that drove every joint in the face for all positions. On top of that was an optional control so the animator could overdrive or modify a specific pose for more personality. These had a NURBS sphere that would change color to let the animator know it was moved from its default position so there was no confusion if something looked 'off'.

The facial rigs for the female and male were identical so animation could be shared when needed. In many cases they needed to be slightly different to show a more feminine or masculine appearance. It used a basic 'Osipa style' control system driving a locator with many custom attributes to drive the individual features.

Finally, I added 'zooTools' right click menus to nearly every control handle. This allowed for animators to quickly be able to reset the selected object back to default, all objects to default, and if there was a left/right side controller there were ways to match left to right, and vice versa. Anything to make the animators life easier and the rig more fun to work with. Other animator requests could easily be added.
Eye controls can be easily reset, or switched to the 'look-at' style for easy object tracking.
Blink options, and close options were separate due to the custom character creator needs, so both are included. Also, the matching setup was used to it was easy to keep things identical.
All controls could be reset to zero, toggle the fine tuing sphere controls, and adjust the number value layouts for the sliders.
A sampling of what the reset, set, and match controls. These really were handy.