The Face Graph is the brains of the FaceFX solution. It allows the artist to model complex facial interactions while maintaining simple controls. The artist can combine any combination of bone poses, morph targets, and material properties into a single target and drive it with a single curve. When two targets conflict with each other to produce unwanted artifacts or poor lip-synchronization, the Face Graph can correct for these situations by forcing one of the target values down.
Any conceivable facial animation setup can be created with the Face Graph. The artist can choose to model speech targets as a single pose or a combination of component targets. The Face Graph uses a system of nodes and link functions to create relationships between targets. Values enter the Face Graph from curves or in-game systems and exit the Face Graph as morph target, bone pose or other output values. Bone pose values are then used to generate final bone transformations which drive the game engine’s skeletal system.
The Face Graph is evaluated at every frame of the game, so it is designed for speed and low memory use.