回答編集履歴
1
コードを追加
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
|
-
|
24
|
+
([参考元](http://tsujitaku50.hatenablog.com/entry/2017/01/11/204150))
|