Time.timeScaleに依らないWaitForSeconds

UnityでTime.timeScaleに依らないWaitForSecondsを使いたい場合は、WaitForSecondsRealtimeというのが使えるそうです。

使い方はWaitForSecondsと同じ。

IEnumerator Example()
{
  Debug.Log("start");
  yield return new WaitForSecondsRealtime(5.0f);
  Debug.Log("end");
}

Time.realtimeSinceStartup使って自分で実装する手間は必要ないみたいです。

リンク

Unity – Scripting API: WaitForSecondsRealtime
https://docs.unity3d.com/ScriptReference/WaitForSecondsRealtime.html

関連記事

Coroutine内で処理を中止する方法(Unity)
UnityのCoroutineは次のような感じで使います。 void Start() { StartCoroutine(Example()); } IEnumerator Example() { // 処理したい内容1 yield return null; // 処理したい内容2 yield return null; // 処理したい内容3 } 何か...

コメントを残す

メールアドレスが公開されることはありません。