コルーチン

<要点>

  • コルーチン関数は返値がIEnumeratorである必要がある
  • MonoBehaviourのStart()やUpdate()等の関数は返値がIEnumeratorでもオーバーライドできる
  • ウェイト関数の種類にはフレームの終わりやFixedUpdateを待つタイプのものもある(WaitForEndOfFrame() や WaitForFixedUpdate())
  • StopCoroutine()関数は、もし指定したコルーチンが動いていない場合、何も処理をせず進行する(エラーは出ない)

サンプル1


using UnityEngine;
using System.Collections;

public class coroutineTest : MonoBehaviour {

  // Use this for initialization
  
   // Update is called once per frame
   void Update () {
   
   }
   
   IEnumerator Start(){                        //これでもオーバーライドできる 
       StartCoroutine("DoSomething",2.0f);
       yield return new WaitForSeconds(1.5f);
       StopCoroutine("DoSomething");
   }
   
   IEnumerator DoSomething(float someParameter){
       while(true){
           print("DoSomething Loop");
           yield return null;
       }
   }
}

メニュー



  • 最終更新:2014-06-13 11:57:48

このWIKIを編集するにはパスワード入力が必要です

認証パスワード