MonoBehaviour 方法可以是 Coroutines

有三種 MonoBehaviour 方法可以製作協同程式。

  1. 開始()
  2. OnBecameVisible()
  3. OnLevelWasLoaded()

例如,這可用於建立僅在物件對攝像機可見時執行的指令碼。

using UnityEngine;
using System.Collections;

public class RotateObject : MonoBehaviour
{
    IEnumerator OnBecameVisible()
    {
        var tr = GetComponent<Transform>();
        while (true)
        {
            tr.Rotate(new Vector3(0, 180f * Time.deltaTime));
            yield return null;
        }
    }
    
    void OnBecameInvisible()
    {
        StopAllCoroutines();
    }
}