(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

(:3[kanのメモ帳]


本ブログの運営者kan.kikuchiが個人で開発しているゲームです!


遅延処理(◯秒後に実行)が簡単に実装出来る DOVirtual.DelayedCall【Unity】【DOTween】


このエントリーをはてなブックマークに追加


この記事でのバージョン
Unity 2022.2.8f1
DOTween Pro 1.0.335


はじめに

今回はUnityで位置や大きさなどのアニメーション、

いわゆるTweenを実装するアセットとしてお馴染みのDOTweenが、

https://assetstore.unity.com/packages/slug/32416?aid=1101lGoY


実は「◯秒後に実行」という遅延処理も簡単に実装出来るというお話。



DOVirtual.DelayedCall

さっそくですがDOTweenで遅延処理を行いたい時はDOVirtual.DelayedCallを使います。

Debug.Log($"遅延処理開始");

DOVirtual.DelayedCall(
  delay:1.5f, //何秒後に実行するか
  callback:() => Debug.Log("1.5秒後に実行"),//遅延処理
  ignoreTimeScale:true//TimeScaleを考慮するか(省略可能、デフォルトはfalse)
);


なお、他の処理と同様にSequenceで繋げたり、

DOTween.Sequence().Append(DOVirtual.DelayedCall(1.5f, () => Debug.Log("1.5秒後に実行")));


KillやCompleteで処理のキャンセルやスキップする事も、もちろん可能です。

var tween = DOVirtual.DelayedCall(1.5f, () => Debug.Log("1.5秒後に実行"));
    
//処理をキャンセル
tween.Kill();