Animation Clips
Sequence animation clips with interpolation curves
Last updated
Sequence animation clips with interpolation curves
Last updated
Timeflow has the ability to playback and sequence Unity animation clips, using an animation curve to control timing.
Find an example scene in:
Assets/AxonGenesis/Timeflow/Examples/Scenes/Animation/AnimationClips.unity
An (or legacy ) component is required to play animation clips, however must remain disabled (unchecked) for this setup.
Please leave the Animator component off and don't remove it. The Animator component is disabled by Timeflow whenever using the Animation Clips behavior. This is required to function properly since Timeflow takes over animation updating and only uses Animator to reference the clips it contains.
It is not necessary to configure blend tree logic for use with Timeflow, since it is ignored when using the Animation Clips behavior.
First add the object with Animator (or Animation) component to the Timeflow view.
To add an animation clip channel, right-click the object in the Timeflow view and select Add Animation > Clip > Name of Clip
Each clip may be added individually or add All. Clip channels are all managed by 1 instance of the Animation Clips behavior.
When an animation clip channel is added, a start and end keyframe are automatically set, starting at the current time and matching the animation clip duration.
Switching to the Graph View shows the default linear interpolation applied. This faithfully plays back the original animation as-is without modifying its timing.
At any time you wish to restore the original timing of the clip channel, right-click on the channel in the Timeflow view and select Reset Animation Clip from the menu.
This clears all existing keyframes and creates new default ones with linear interpolation, starting at the current time.
When one or more clips are sequenced at the same time (as shown below), one may overwrite others based on the channel order. The channels are processed from the top down, so the last (bottom) channel is applied last.
It is more common to use this method to create one-shot playback, where each clip is played at a different time as shown below.
Select the object to view the Animation Clips component in the Inspector.
By default the animation clip name is used as the channel name. Uncheck this box to enter a different name. This is only for display and has no effect on function.
The drop-down menu on each channel shows the current clip assigned and may be reassigned to a different one. However, note when doing this that the keyframe timing may be different and could affect the playback speed of the clip.
Toggle the foldout for each listed channel to view more details.
Animation clip channels support all the functionality of standard keyframe channels including looping, value limits, shader global, and keyframe details.
Animation clip channels by default use linear interpolation with keyframes matching the duration of the clip. This plays back animation as-is. However, all curve and keyframe editing features may be used to create any playback timing desired.
Although blending between clips is not supported, this approach can still be very useful to have a character or object performing specific actions. The transitions between each could be part of an edit sequence or masked by changing camera angles, which can be accomplished using .
For a different method of playing animation clips that allows blending and much more complex character control, see .
Please note that new channels cannot be added in the editor. Use the context menu in the Timeflow view to add new animation clips channels.
For common features please refer to , , and .
You may have also noticed that an additional component was added to the game object. This is only a helper component and has no direct use. See for details.
For further documentation see .
Use the curve editing tools in the to create dynamic changes in animation speed including slow motion and hyper speed effects.
Animation Effects may also be used to drive animation clip channels with , , or any channel to create complex time interpolations.