Chapter 22無料公開

🔰コルーチンやTaskでDOTweenを待機する方法

Unityで非同期処理を実装する際の候補として
コルーチンTaskがありますが、
それらとDOTweenを連携させる方法を学びます。

👉コルーチンでDOTweenの待機する方法

IEnumerator Start()
{
    yield return transform.DOLocalMove(new Vector3(10f, 0, 0), 1.5f)
        .WaitForCompletion();
    
    // (10f, 0, 0)へ向かうトゥイーンを待機後
    // (0f, 0, 0)へ向かうトゥイーンを開始
    transform.DOLocalMove(new Vector3(0f, 0, 0), 1.5f);
}

WaitForCompletionメソッドはYieldInstruction
いわゆるカスタムコルーチンを返します。

このインスタンスをyield returnで待機すると、
トゥイーンが完了した際に次に進むようなコルーチン処理が書けます。

👉TaskでDOTweenの待機する方法

async Task Start()
{
    await transform.DOLocalMove(new Vector3(10f, 0, 0), 1.5f)
        .AsyncWaitForCompletion();

    // (10f, 0, 0)へ向かうトゥイーンを待機後
    // (0f, 0, 0)へ向かうトゥイーンを開始
    transform.DOLocalMove(new Vector3(0f, 0, 0), 1.5f);
}

AsyncWaitForCompletionメソッドはトゥイーンのTaskを返却します。
このTaskをawaitするとトゥイーンを待機します。


ここまでのチャプターが僕的に必ず知っておいた方が良い内容でした。
一旦ここまでを理解して貰えれば一通りの開発はできると思います。

より深くDOTweenの事を知りたい方はこの先の扉を開けてください。

では一旦お疲れさまでした。