đŸ‘¯Animation Clips

Sequence animation clips with interpolation curves

Timeflow has the ability to playback and sequence Unity animation clips, using an animation curve to control timing.

This behavior does not support animation blending.

For a different approach that does support animation blending, please see Animator Blend Trees.

Animator Component Setup

An Animator (or legacy Animation) component is required to play animation clips, however must remain disabled (unchecked) for this setup.

The enable checkbox in upper left is unchecked automatically and for good reason.

The legacy Animation component is also supported and may be used instead of Animator.

Animation clips relating to states in the Animator controller.

To add more animation clips, drag and drop the clip assets from the Project view into the Animator Controller view, shown above.

It is not necessary to configure blend tree logic for use with Timeflow, since it is ignored when using the Animation Clips behavior.

Adding Animation Clips in Timeflow

First add the object with Animator (or Animation) component to the Timeflow view.

The context menu automatically finds and lists all animations clips on the object.

Each clip may be added individually or add All. Clip channels are all managed by 1 instance of the Animation Clips behavior.

Usage

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.

Showing default keyframes added automatically when the channel is created.

Switching to the Graph View shows the default linear interpolation applied. This faithfully plays back the original animation as-is without modifying its timing.

To preserve the original timing of animation clips...

Always use linear interpolation and make sure that the duration between the start and end keyframes is unchanged, though it's of course fine to move the keyframes together anywhere in the timeline to sequence the animation.

Reset Animation Clip

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.

Execution Order

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.

Both animations play at the same time, but RunningJump overwrites Walking since it is listed after. Drag and drop the channels to reorder them.

Animation Overwriting

This is only an issue if multiple animation clips target the same properties. If for example, one clip animates only a character's head and the other clip animates only the body, then both may play simultaneously without conflict. However, if both clips are animating the same properties, then overwriting will occur.

Sequencing Clips

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.

In this case there is no issue with channel order since keyframes are staggered and there is no overlap.

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 Blend.

For a different method of playing animation clips that allows blending and much more complex character control, see Animator Blend Trees.

Animation Clips Editor

Select the object to view the Animation Clips component in the Inspector.

Channels may also be reordered here by using the up/down arrows on the left.

Please note that new channels cannot be added in the editor. Use the context menu in the Timeflow view as described above to add new animation clips channels.

For common features please refer to Menu Bar, Channels, and Update Settings.

Use Clip Name

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.

Animation Clip Select

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.

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 Animator Info for details.

Channel Details

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.

Limit Value

By default new animation clip channels are created with Limit Value set to 0 to 1. This is because the channel represents interpolation from 0-1 and values outside of this range are moot. It is recommended to leave this setting as-is.

For further documentation see Channels.

Curve Editing

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.

Default linear keyframes play back the animation without alteration.

Use the curve editing tools in the Graph View to create dynamic changes in animation speed including slow motion and hyper speed effects.

An example showing Bezier curves being used to control animation clip timing.
Add more keyframes to create any curve desired, and use the built-in looping features.

Animation Effects Channel Link may also be used to drive animation clip channels with Tween, MidiTween, or any channel to create complex time interpolations.

Blending a Tween channel into an animation channel curve. Note that the final curve is modified by the channel link calculation, so no longer lines up with the keyframes.

Last updated