Quick Start
Learn the basics and get Evo Tween up and running
Evo Tween animates values over time, from a button's scale to a camera's field of view. Build animations in the Inspector, arrange them in the Timeline Window, or start them from code.
The runtime reuses tween instances and prepared animation data to support 0 B GC Alloc during steady-state playback. See Performance for setup costs and practical profiling tips.
Setup
The available modules cover Transforms, uGUI, TextMeshPro, audio, rendering, physics, video, and Evo UI. Keep the dependencies for the modules you use: UI bindings need Unity UI, TMP bindings need TextMeshPro, and Procedural Shape bindings need Evo UI. Volume bindings use the Render Pipelines Core package.
You don't need to add a manager to your scene. Evo Tween creates its runtime manager automatically when Play Mode starts.
Your First Animation
Let's make an object grow to its normal size when it appears.
Select a GameObject and add Evo -> Tween -> Tween Animator from Add Component.
Keep the initial Default state, or give it a descriptive State ID, such as Show.
Add a clip and choose Transform -> Scale.
Leave the target component empty to animate the Transform on this GameObject, or assign a specific target object.
Turn off From Current. Set From to (0.8, 0.8, 0.8) and Target to (1, 1, 1).
Set Duration to 0.25 and Ease to Out Cubic.
Use the Inspector's preview controls to try it. Keep Play On Enable enabled, then enter Play Mode.
To add a fade, put a Canvas Group on the same UI object and add UI -> Canvas Group -> Alpha. Use an explicit start of 0 and a target of 1. Leave the second clip's Flow set to Parallel so both clips begin together.
Starting from the current value
Keep From Current enabled for animations that should pick up from the object's current appearance, such as interrupted hover transitions. Turn it off when an entrance animation should always begin from a specific value.
Open the Timeline Window
Select the Tween Animator, then open Tools -> Evo Tween -> Tween Timeline. You can drag clips to adjust their timing, trim their edges, scrub the playhead, and preview the result without entering Play Mode.
The Timeline Window edits the same sequence shown in the Inspector. See Timeline Window for recording, snapping, presets, and keyboard shortcuts.
Start a Tween from Code
Use EvoTween.Create(from, to, duration), then bind it to a property. The binding starts playback and returns a handle you can keep to pause or cancel it.
using UnityEngine;
using Evo.Tween;
public class ScaleOnEnable : MonoBehaviour
{
private TweenHandle scaleTween;
private void OnEnable()
{
scaleTween = EvoTween.Create(Vector3.one * 0.8f, Vector3.one, 0.25f)
.WithEase(Ease.OutCubic)
.BindToScale(transform);
}
private void OnDisable() => scaleTween.Kill();
}Use this script on a separate object when trying both examples. Two animations writing the same scale can interfere with each other.
Explore Further
Tween Animator
Create named states and play them from events or code.
Timeline Window
Arrange, preview, and record your animations.
Sequence Preset
Reuse an animation across multiple objects.
Scripting
Create value tweens and control their playback.
Modules
Find the properties you can animate.
Performance
Understand pooling, allocations, and runtime costs.