DOTween (HOTween v2)
DOTween requires Unity 2020.3 or newer (run DOTween's setup utility after installing to activate shortcuts and features based on your current Unity version). If you have an older Unity version (down to 5.6.7) I got you, find more info near the bottom.
IMPORTANT: if upgrading from a version older than 1.2.815 (February 6, 2026) some errors will appear after the installation. Simply quit and restart Unity, then run the setup and all will work correctly.
DOTween is a fast, efficient, fully type-safe object-oriented animation engine, optimized for C# (it is also the evolution of HOTween, my previous Unity tween engine).
NOTE: DOTween Pro is also available, with additional shorcuts for external plugins, a Visual Path Editor, a Visual Animation Editor and a script-only low-level API to animate TextMesh Pro texts per-character (skew, scale, rotate, move).
FEATURES
- Lightweight, highly optimized, performant, memory efficient
- Modular (you can activate/deactivate references to major Unity systems like physics/UI/etc)
- Animate anything, either with shortcuts or with DOTween's generic way
- Tween strings with rich text support and scrambling options
- Organize your tweens in complex groups that can be controlled as a single tween
- Tons of control methods (Play, Pause, Goto, Rewind, Complete, and more)
- Looping (with Yoyo and Incremental additional options), easing (including custom easing with AnimationCurves), from and relative tweens, and more
- A wide array of callbacks
- WaitFor(tweenEvent) methods that can be used inside coroutines
- Blendable tweens
- Animate objects along linear or curved paths with constant speed (or not: you choose), with various orientation options
- Extra options depending on the tween type, like snapping or rotating along an object's self space
- Utility Panel which allows you to set DOTween's preferences
- DOTween Inspector, which shows you additional data while playing in Unity Editor
- Additional DOVirtual methods for extra features (like calling a method after a given delay)
- Safe mode
- And much more... (full list of features)
EXTRA SHORTCUTS FOR EXTERNAL ASSETS
(enabled when setting up DOTween from its Utility Panel)
DOTween works from Unity 5.6.7 to Unity 2023 or newer. Run its setup utility after installing it to activate shortcuts and features based on your current Unity version.
NOTE: Since the Asset Store supports only packages made with Unity 2020.3 or newer, you can find updated DOTween versions compatible with older Unity versions here.
SUPPORTED PLATFORMS
Windows, OSX, Linux, Unity WebGL, WebPlayer, iOS, Android, Windows Phone/Store, PlayStation, Xbox, PS Vita/PSM, Switch
LINKS
Release Notes
See FULL CHANGELOG
IMPORTANT IN CASE OF UPGRADE FROM VERSIONS OLDER THAN 1.2.815 (February 6, 2026): if lots of errors appear in the editor immediately after the update, close and restart Unity so that DOTween can reinitialize correctly, then run DOTween's setup as usual.
In case you're upgrading from a version many years old (1.2.000), follow these instructions instead.
v1.2.825
- NEW: Added UI Toolkit VisualElement shortcuts for DOPunch and DOShake
- BUGFIX: Fixed UIToolkit shortcuts throwing errors on older Unity versions
v1.2.815
- IMPORTANT: updating to this version (or newer) will show lots of errors in your project. To fix them, simply close and restart Unity so that DOTween can re-initialize correctly.
- CHANGE: DOTween will now add defines to your project based on the modules you activate, and DOTween's module files won't rewrite themselves anymore but will instead rely on those defines.
- NEW: Added UI Toolkit shortcuts compatible with Unity 6.3 for DOMove, DOScale, DORotate
- BUGFIX: Fixed safe mode reporting not resetting correctly when only Reload Scene is enabled in the editor
v1.2.790
- BUGFIX: Fixed errors when disabling playmode domain reload
v1.2.785
- NEW: Added tween.IsTimeScaleIndependent method, which will return TRUE if the tween was set to be timeScale independent via the tween.SetUpdate method
- NEW: Added EaseManager.EvaluateUnclamped method, which can be used by custom plugins to allow LoopType.Incremental to work automatically
- BUGFIX: Added various control checks and warnings to DOTween.SetTweensCapacity (to prevent capacity to be set to less than current elements, and similar issues)
- BUGFIX: Fixed rare bug where DOTween.Init could be successfully called after DOTween had been destroyed while app was quitting (which generated indexOutOfRange errors)
v1.2.765
- NEW: Done method now returns the tween so it can be chained correctly
v1.2.760
- NEW: Added Sequence.JoinCallback method
- NEW: Now when importing DOTween a DOTWEEN global define is added, and removed if DOTween is deleted
- NEW: Added Done chainable method
v1.2.745
- BUGFIX: fix for EditorPreview throwing errors in some Unity versions
v1.2.740
- BUGFIX: fix for new Unity versions sometimes forgetting to include old Unity defines
v1.2.735
- NEW: added DOVirtual.Vector2 method
- NEW: added tween.isLoopingBackwards property
- BUGFIX: fixed obsolete warnings for Unity 2022 and 2023
- BUGFIX: fixed wobbly rotation when using WorldAxisAdd or LocalAxisAdd
- BUGFIX: fixed Editor Preview not updating correctly with UI object