概要
2015/1/7 に「Editor Coroutines」がリリースされました
「Editor Coroutines」を導入すると、
エディタ拡張でコルーチンが使えるようになります
検証環境
- Unity 2017.1.1f1
- Editor Coroutines 1.2
使い方
using EditorCoroutines; using System.Collections; using UnityEditor; using UnityEngine; public class ExampleWindow : EditorWindow { [MenuItem( "Tool/Example" )] public static void ShowWindow() { GetWindow<ExampleWindow>(); } private void OnGUI() { if ( GUILayout.Button( "Start" ) ) { this.StartCoroutine( Example() ); } if ( GUILayout.Button( "Stop" ) ) { this.StopCoroutine( "Example" ); } if ( GUILayout.Button( "Stop all" ) ) { this.StopAllCoroutines(); } } private IEnumerator Example() { while ( true ) { yield return new WaitForSeconds( 2f ); } } }
例えば EditorWindow であれば上記のようなコードでコルーチンが使用できます
EditorCoroutines.StartCoroutine( coroutine, thisRef );
EditorCoroutines.StartCoroutine( methodName, thisRef );
EditorCoroutines.StartCoroutine( methodName, value, thisRef );
EditorCoroutines.StopCoroutine( coroutine, thisRef );
EditorCoroutines.StopCoroutine( methodName, thisRef );
EditorCoroutines.StopAllCoroutines( thisRef );
EditorWindow 以外でコルーチンを使う場合は上記の関数を活用します