GameObjectにアタッチしたスクリプトのenabledフィールドをfalseにした場合(スクリプトを無効にした場合)、Update()などが呼び出されなくなり更新処理が止まります。 しかし、前述のスクリプトから呼び出されたコルーチンは止まりません。 たとえば、以下のようなカウンタ値を1秒ごとに出力するスクリプトでは、スクリプトを無効にしてもコルーチンが動き続け値が表示され続けます。 using UnityEngine; using System.Collections; public class TimeCounter : MonoBehaviour { // 1秒ごとにカウンタをインクリメントして表示するコルーチン IEnumerator Start() { int count = 0; while ( true ) { // カウンタ値表示 Debug.Log(count++);
![[Unity] スクリプトの有効/無効状態にコルーチンを連動させる](https://cdn-ak-scissors.b.st-hatena.com/image/square/f499c91fae35c2ad5b49d6e3df44614bdc798bf3/height=288;version=1;width=512/https%3A%2F%2Fftvoid.com%2Fblog%2Fwp-content%2Fthemes%2Fdp-colors%2Fimg%2Fpost_thumbnail%2Fnoimage.png)