Hello,
I worked on this a lot, and it’s finally ready…
HOTween is a fast, type-safe object-oriented tween engine for Unity, compatible with all of Unity’s scripting languages.
It’s free, easy to use, and comes with many options, among which the possibility to create sequences of tweens that are controlled as a single animation.
Oh! And now it also comes with a Visual Editor!
You can download it and find a lot more info here:
Key Features
Animation speed
HOTween is VERY fast and reliable. Just check HOTween’s Test Run and see for yourself.
Fast scripting
Coding-wise, HOTween is built so that code-assist will immediately show you all the available options, while helping you to auto-complete them quickly. Also, when using plugins, just write “Plug” (or even “Pl” is enough), and code-assist will show you all the available ones.
Type-safety
The only string you will have to write is the name of the property to tween. All the rest is fully integrated into code-assist and auto completion.
Multiple update choices
Each tween can be independently set to update at each Update, LateUpdate, FixedUpdate, or to use a special time-independent update, which will not be influenced by changes to Unity’s internal timeScale (useful to animate GUI elements while a game is paused).
Make it simple, make it complex
You can write a simple tween just like this:
HOTween.To(myObject, 1, “myProperty”, 2);
or you can create complex animations of multiple properties, with all the parameters you want, and nest them inside Sequences: both of them are controlled in the same easy way.
Loops
You can create simple loops (X to Y, then restart), yoyo loops (X to Y, then Y to X and repeat), plus yoyo inverse loops, which work like yoyo loops, but invert their easing when moving back to the original position. You can set the exact number of loops you want, or let them go on forever.
Time scale
You can set different time scales for every tween, and you can change them even while the tweens are running.
Plugins
HOTween automatically detects the type of property you are animating, and applies the relative default plugin. But you can always choose another one (for example, when you animate a Vector3, you can decide to use a plugin which will animate only one of the axis, or combine them anyway you want).
Callbacks
Easy to set callbacks, to invoke the function of your choice (public, private, static, whatever) when something happens during the animation.
Common Interface
Is it a Tweener or a Sequence? Who cares? They both share the same IHOTweenComponent interface, thus you can control each of them in the same way.
Powerful controls
A full range of controls: Play, Pause, Reverse, Rewind, Restart, Complete, GoTo, GoToAndPlay.
HOTween Visual Editor
A single dockable panel, to which you can add all the targets and properties you wish to tween in each scene, allowing you to tween everything, including any attached MonoBehaviours properties and fields.
NEW! HOTweenComponent
Works like HOTween Visual Editor, but can be attached to a GameObject, to tween only its Components. Works greatly with prefabs
A note on iTween
I’d like to note that HOTween doesn’t aim to be “better” than iTween. Simply put, it’s a very different engine, more object-oriented than gameObject-oriented, for different coding tastes, and both can work quite well together.
A note on the name
Nope, the name doesn’t derive from HOT + Tween: it’s just that my tiny company was named Holoville, and thus I usually place a HO in front of my scripts, to recognize them more quickly. Also, I had no idea of the slang meaning of “tween”. Now that I do, I see I gave it the most ridiculously horrible name ever. HOTween V2 will definitely not be named HOTween
EDIT additional comments on the ridiculousness of the name