DOTweenの導入方法と使用例
DOTweenはUnityのAssetのひとつで、Objectの動きを制御するAsset。
無料版と有料版があるが、今回は無料版を利用した。
先ず、上記のAssetをDownloadし、Importする。
その次に下記のようなウィンドウが表示されるので、「Setup DOTween」を押下。
そうするとAdd/Remove Modulesに遷移するので、「Apply」を押下。
これで準備完了。
あとは、Objectにアタッチされているスクリプトに動きをコーディングすると完了となる。
動きのコーディングの前にやることは、スクリプト冒頭に、
using DG.Tweening;
を記載。これでDOTweemingをこのスクリプト内で使用可能となる。
では、実際に動きのコーディングをしていく。
今回は2種類の動きを作ろうと思う。
どのような動きか、画像をあげるので灰色の円盤状の機体に注目してほしい。
まず1つ目。
下記のような簡単な直線的な動き。
この動きを実現させるためには、下記のコーディングをする。
void Start() { transform.DOMove(new Vector3(0, -750, 0), 4.0f) .SetEase(Ease.Linear); }
簡単に説明すると、
- 第1引数は到着点
- 第2引数は到着点に行くまでにかかる時間
- チェーンメソッドSetEase()は加速減速の方法
今回のケースだと、
(0, -750, 0)に4秒かけて加速減速なしで向かう
となる。
これだけで完成となる。
ちなみにObject出現位置が動きの開始位置となるのでそこは記述の必要はない。
2つ目。
Pathを指定してその経路を通る動き。下記のような動き。
この動きを実現させるためには、下記のコーディングをする。
void Start() { Vector3[] paths = new[] { new Vector3(0, 0, 0), new Vector3(-450, 300, 0) }; transform.DOPath(paths, 2.0f, PathType.CatmullRom) .SetEase(Ease.Linear); }
簡単に説明すると、
先ず、Vector3でPathの配列を作る。
そのあとに動きの制御のDOPathを利用する。
- 第1引数はPathの配列
- 第2引数は到着点に行くまでにかかる時間
- チェーンメソッドSetEase()は加速減速の方法
今回のケースだと、
(0, -750, 0)、(-450, 300, 0)を経由してに2秒かけて加速減速なしで向かう
となる。
これだけで完成となる。