Skip to content
Lucas Sampaio Dias edited this page Aug 15, 2018 · 5 revisions

UniTween Wiki

UniTween is a Tween framework for Unity that enables programmers and artists to create almost any kind of Tween in a workflow that is easy to learn, fun to use, and with great maintainability.

  • Zero-coding: Make simple or complex tweens only by working on the Unity Editor.
  • Productivity: In our tests it is up to 10 times faster to create a tween using UniTween than coding it.
  • Reusability: Tweens created with UniTween can be used multiple times in one or more sequences (ScriptableObject).

To learn more about it, check our pages at the right side of this page.

FAQ

  • Is UniTween free? Yes! It is a free open-source plugin. However, it does require Odin - Inspector and Serializer (which is a paid plugin).

  • How can I easily manage all the tweens I make? First of all, separate your TweenData files in a good folder structure with names that properly describe what the tween does. Second, try to make tweens that are as generic as possible so you can reuse them later (for example, an image fade effect that is used for many images on different menus). Finally, be sure to check the Sequence Explorer and the Runtime Helper (at Tools/UniTween). They provide great features to manage the Sequences of your scene and test them in a multitude of ways.

  • Can I just use UniTween's ScriptableObjects as configuration files and not the UniTweenSequence component? Yes! Since version 0.6.0 you can use a GetTween() method from the ScriptableObjects that defines the tweens (these assets are called TweenData). The GetTween() methods return a Tween object (from DOTween), so you can use it in any way you want. Here's an example:

using Sirenix.OdinInspector;
using UniTween.Data;
using UnityEngine;
using UnityEngine.UI;

public class Test : MonoBehaviour
{

    public ImageTween myTween;
    public Image image;

    [Button]
    public void TestMethod()
    {
        myTween.GetTween(image);
    }

    public void TestMethodSequence()
    {
        Sequence sq = DOTween.Sequence();
        sq.Append(myTween.GetTween(image));
    }
}