FaceFX Support
FaceFX Documentation and support
Events - Properties
- Start Time - The time in seconds in the parent animation that will correspond to time zero in the child animation.
- Duration Scale - The speed multiplier at which to play the child animation. An event with a Duration Scale of .5 will take twice as long as the original animation to play.
- Magnitude Scale - The magnitude multiplier at which to play the child animation. All of the key values in the animation will be multiplied by this value. (e.g., a Magnitude Scale of 2.0 means the event will have twice the effect than normal.)
- Blend in - The time in seconds to blend into the curve values of the animation. The Blend In value can be scaled by the Duration Scale of the event, and it can be inherited from the parent event.
- Blend out - The time in seconds to blend out of the curve values in the animation. The Blend Out value can scaled by the Duration Scale of the event, and it can be inherited from the parent event.
- Probability - The probability that this event will have any effect. This is the chance that the event will be spawned into the take (e.g., a Probability of 0.25 means the child event will be spawned 25% of the time.)
- Pick One Boolean - If enabled, only one child event from the entire event template will be spawned. The “winner” will be picked based on the weights assigned to the events, with larger weights resulting in a greater chance of being picked. The event is picked prior to spawn conditions being considered.
- Weight - Only valid when “Pick One” is enabled. A given child’s weight divided by the sum of all weights is the probability that the child will be picked.
- Persist Values Boolean - If enabled, the last frame of the child animation remains active on the character. The curves active in the frame hold their values until being taken over by another child event.
- Custom Payload - For use in consultation with your engine programmers. When the event fires, the string in the Custom Payload field is dispatched to a callback. Your game engine can register itself to recieve this callback, and make use of the Custom Payload to synchronize game engine events to the FaceFX facial animation. For example, particle effects could be spawned, or cutscenes triggered. Payloads are used internally by FaceFX Studio as follows:
1. payloads that look like the following will fire full body Ogre animations:
game: playanim my_ogre_anim_name
Check the EventCustomPayloadManager.py file for implementation details.
Spawn Conditions
Spawn conditions will prevent an event from spawning if the magnitude scale and duration scale do not meet certain criteria. For example, a simple rig might have one “smile” animation that can be triggered at different magnitude and duration scales to stretch and squash the curves. A more in-depth rig could have multiple smile animations that are triggered depending on how big and long the smile are. Spawn conditions can include:
- Min/Max parent duration scale
- Min/Max parent magnitude scale