本日は Unity の小ネタ枠です。
Unityでスクリプトからエディターの再生・一時停止・停止を操作する方法についてです。
スクリプトからエディターの再生・一時停止・停止を操作する
スクリプトからエディターの再生・停止を操作するには EditorApplication.isPlaying を参照して変更します。
また一時停止状態は EditorApplication.isPaused で変更できます。
・再生状態
docs.unity3d.com
・一時停止状態
docs.unity3d.com
サンプルスクリプト
以下のサンプルスクリプトを作成しました。
・PlayControlTest.cs
using UnityEngine; public class PlayControlTest : MonoBehaviour { /// <summary> /// エディターを再生する /// </summary> [ContextMenu("Play")] public void PlayEditorApplication() { #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = true; UnityEditor.EditorApplication.isPaused = false; #endif } /// <summary> /// エディターの再生を一時停止する /// </summary> [ContextMenu("Pause")] public void PauseEditorApplication() { #if UNITY_EDITOR UnityEditor.EditorApplication.isPaused = true; #endif } /// <summary> /// エディターの再生を終了する /// </summary> [ContextMenu("Stop")] public void StopEditorApplication() { #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false; #endif } }
コンテンツメニューから各関数を実行して動作を確認します。
再生
一時停止
停止