2014年4月10日木曜日

[Unity]コルーチンとyieldの処理

基本は、

Unityスクリプトリファレンス Coroutineの解説

Unityスクリプトリファレンス StartCoroutineの解説

で解説されている通りで、何フレーム、何秒か待って処理をしたり非同期に処理をしたい場合
に使用するものです。

public class CoroutineTest : MonoBehaviour
{
   void Start()
   {
      StartCoroutine(waitTime(1.0f));
      StartCoroutine(waitTime, 1.0f);
      StartCoroutine("waitTime", 1.0f);

      StartCoroutine(waitFrame());
      StartCoroutine(waitFrame);
      StartCoroutine("waitFrame");
   }

   IEnumerator waitTime(float time)
   {
      // time秒待ってからprintを実行する
      yield return new WaitForSeconds(time);
      print("waitTime = "+time+" second");
   }

   IEnumerator waitFrame()
   {
      // 1フレーム待ってからprintを実行する
      yield return null;
      print("waitFrame 1frame");
   }
}

0 件のコメント:

コメントを投稿