MagicTween.Benchmarks

November 5, 2023 · View on GitHub

English README is here

このプロジェクトには、GithubやAsset Storeなどで公開されているトゥイーンライブラリの性能をPerformance Testing APIを用いて計測した結果と使用したソースコードが含まれています。

Note 再配布が許可されていないライブラリを含むため、このプロジェクトには実際のライブラリのソースコードは含まれていません。自身でテストを行いたい際にはテストに必要なライブラリを手動で追加してください。

テスト環境

ベンチマークはmacOS向けに実機ビルドした上で行われています。 マシンやバージョンに関する詳細については以下の通りです。

MacBook Pro
OS: macOS Ventura 13.0
CPU: Apple M2
Memory: 24GB

Unity: 2022.3.1f1
Scripting Backend: IL2CPP

使用したライブラリ

結果

Timeは各フレームの処理時間の中央値を表します。

StartUpについては、トゥイーンを作成するのにかかる時間のみを計測したものになります。

Tween 32,000 floats

Time
AnimeRx7.88ms
AnimeTask7.42ms
DOTween1.97ms
UnityTweens1.9ms
LeanTween1.86ms
GoKit1.45ms
ZestKit1.29ms
PrimeTween0.97ms
MagicTween0.5ms
MagicTween (for ECS)0.3ms

Tween 64,000 floats

Time
AnimeRx18.9ms
AnimeTask13ms
DOTween5.67ms
LeanTween4.45ms
GoKit4.03ms
UnityTweens3.98ms
ZestKit3.45ms
PrimeTween2.14ms
MagicTween1ms
MagicTween (for ECS)0.5ms

Tween 25,000 Transform.position

TweenAverage
AnimeTask9.16ms
AnimeRx6.29ms
GoKit3.55ms
LeanTween2.97ms
DOTween2.85ms
UnityTweens2.79ms
PrimeTween2.52ms
ZestKit1.88ms
MagicTween1.7ms
MagicTween (Job)1.4ms

Tween 50,000 Transform.position

TweenAverage
AnimeTask19.11ms
AnimeRx17.64ms
GoKit11.21ms
LeanTween8.5ms
DOTween7.89ms
UnityTweens7.28ms
PrimeTween7.28ms
ZestKit6.55ms
MagicTween5.31ms
MagicTween (Job)3.3ms

Tween 25,000 Trasnform.rotation

Time
AnimeTask8.59ms
AnimeRx6.84ms
GoKit3.67ms
LeanTween3.06ms
DOTween2.99ms
UnityTweens2.73ms
PrimeTween2.61ms
ZestKit1.93ms
MagicTween1.69ms
MagicTween (Job)1.5ms

Tween 50,000 Trasnform.rotation

Time
AnimeTask19.11ms
AnimeRx17.64ms
GoKit11.21ms
LeanTween8.5ms
DOTween7.89ms
UnityTweens7.28ms
PrimeTween7.28ms
ZestKit6.55ms
MagicTween5.31ms
MagicTween (Job)3.3ms

Startup (64,000 float tweens)

Time
GoKit3,341.76ms
ZestKit416.03ms
AnimeRx300.48ms
AnimeTask90.57ms
DOTween83.46ms
UnityTweens75.21ms
LeanTween51.45ms
MagicTween31.14ms
MagicTween (for ECS)16.7ms
PrimeTween4.38ms

Startup (50,000 Transform.position tweens)

Time
GoKit1,721ms
AnimeRx241ms
AnimeTask206ms
UnityTweens45.68ms
MagicTween (Job)45.22ms
DOTween42.95ms
LeanTween36.39ms
MagicTween25.91ms
ZestKit19.08ms
PrimeTween7.53ms

Note Magic TweenはTweenをキャッシュすることでアニメーションの開始を高速化できます。詳細はREADMEの最適化の項目を参照してください。