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
}
何か...