Animations in general can be thought of like a Finite State Machine where the animated object will be in one specific state at any given time, but that is not technically true when blending is taken into account. Blending is the process of interpolating between multiple animations to combine them into a single output. There are several different kinds of blending in Animancer:
- If you have an animation which does not start the character in exactly the same pose where the previous one ended, you can use Fading to smoothly transition between those animations over time instead of instantly snapping to the new pose.
- If you want to play multiple separate animations at once such as Walk and Wave, you can use Layers to keep each group separate and control which body parts they affect.
- If you have Walk and Run animations, you can use Mixers to play a combination of both at once so that the character can move at any speed instead of only at those two specific speeds.
All animations and layers have an
AnimancerNode.Weight which is a value between 0 and 1 that determines how much they affect the blended result. For example, if two animations are at 0.5 weight each, then the output will be exactly 50% of the way between them.
So rather than being explicitly in either a Walking or Running state, a character could be mixing a combination of both while Waving with their upper body on a second layer and fading towards a Standing animation, all at once.
|Fading||Smoothly transition between animations over time instead of immediately snapping between them.|
|Layers||Play multiple separate animations at the same time, allowing you to animate different body parts independently and add animations on top of each other.|
|Mixers||Interpolate between multiple animations based on arbitrary parameters you control.|