UnityのOnRenderImage
は、play mode時は毎フレーム呼ばれるけれど、edit mode時は必要な時のみ呼ばれるという実装になっているそうです。
Unity – Scripting API: ExecuteInEditMode
https://docs.unity3d.com/ScriptReference/ExecuteInEditMode.html
edit modeでOnRenderImage
を呼び出したい場合は、
if (GUI.changed) {
Repaint ();
}
のような感じで、Repaint
を実行してみると良いようです。
Update
やOnGUI
でもedit modeとplay modeで挙動が変わるそうなので、気を付けてください。
リンク
Unity – Scripting API: ExecuteInEditMode
https://docs.unity3d.com/ScriptReference/ExecuteInEditMode.html
Unity – Scripting API: ExecuteInEditMode
https://docs.unity3d.com/ScriptReference/ExecuteInEditMode.html
When is Update called in edit mode? – Unity Answers
https://answers.unity.com/questions/122074/when-is-update-called-in-edit-mode.html