本記事では「指定した時間経過後に処理を呼び出す」という内容で書いていきます。
指定した時間経過後に処理を呼び出す【Invoke】
まずは『Invoke』を使った方法です。
Invokeは指定した関数を指定した時間分遅延実行できる仕組みです。
下はInvokeの記述になります。
Invoke(“呼び出したいメソッド名”, 遅延させたい時間(秒))
下のコードは「実行してから3秒後にSample1メソッドを呼び出す」という内容になっています。
1 2 3 4 5 6 7 8 9 |
void Start() { Invoke("Sample1", 3); } private void Sample1() { Debug.Log("3秒が経過しました"); } |
実行結果
3秒が経過しました
指定した時間経過後に処理を呼び出す【Time.deltaTime】
次はフレーム間で生じる経過時間を用いた方法になります。
それには『Time.deltaTime』を使います。
Time.deltaTimeとは直前のフレームと現在のフレーム間で経過した時間を返すプロパティです。
下のコードは「経過時間が3秒以上になったときに処理を呼び出す」という内容です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
private float sec = 0; void Update() { sec += Time.deltaTime; if (sec >= 3f) { Sample1(); sec = 0; //経過時間をリセット } } private void Sample1() { Debug.Log("3秒が経過しました"); } |
実行結果
3秒が経過しました
スポンサーリンク