teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

コードを追加

2021/01/27 03:01

投稿

fiveHundred
fiveHundred

スコア10448

answer CHANGED
@@ -2,4 +2,23 @@
2
2
  Unityの基本機能はシングルスレッドなので、これが実行される間はシステム全体がストップします。
3
3
  (マルチスレッドを使っている場合は例外ですが、そもそもUnityの機能のほとんどが使えなくなるので、よほどのことでない限りは使いません)
4
4
 
5
+ このような、「しばらく待機する」といったことをUnityで行う場合は、該当箇所をコルーチンにして``WaitForSeconds``などを使うようにしてください。
6
+
7
+ ```C#
8
+ void Start()
9
+ {
10
+ // 指定された「コルーチン」を呼び出す
11
+ StartCoroutine(sleep());
12
+ }
13
+ //「コルーチン」で呼び出すメソッド
14
+ IEnumerator sleep()
15
+ {
16
+ Debug.Log("開始");
17
+ yield return new WaitForSeconds(10f); //10秒待つ
18
+ Debug.Log("10秒経ちました");
19
+ yield return new WaitForSeconds(10f);
20
+ Debug.Log("さらに10秒経ちました");
21
+ }
22
+ ```
23
+
5
- このような、「しばらく待機する」といったことをUnityで行う場合は、該当箇所をコルーチンにして``WaitForSeconds``などを使うようにしてください([参考](http://tsujitaku50.hatenablog.com/entry/2017/01/11/204150))
24
+ ([参考](http://tsujitaku50.hatenablog.com/entry/2017/01/11/204150))