前はあまり気にしていなかったんですが、なぜか今回の開発作業ではストレスになっていました。エディタはVisualStudioを使っていますが、スクリプトを編集後、シーンやヒエラルキーなどを見られる画面に移動するとコンパイルが始まってしまい、場合によっては10秒、20秒とキーを受け付けなくなってしまいます。ネットでも書き込みがたくさんあります。見つけた「解決法」をいくつか試し、うまくいったものを紹介します。次の記事です。
ぼくの環境では、載っている方法の2つめで自動コンパイルは止まりました。ただ、勝手にコンパイルするのを許可、禁止をいちいちメニューから選ばなければなりません。せめてショートカットキーで何とかならないのか……と探したら方法がありました。まとめて、次のコードで紹介です。Editor.csに以下のクラスを追加するだけです。
-----------------------------------------
public class CompileLock : MonoBehaviour
{
[MenuItem("Compile/Lock #l")]
static void Lock ()
{
Debug.Log("コンパイルをロック");
EditorApplication.LockReloadAssemblies();
}
[MenuItem("Compile/UnLock #u")]
static void Unlock ()
{
Debug.Log("コンパイルをアンロック");
EditorApplication.UnlockReloadAssemblies();
}
}
-----------------------------------------
[MenuItem("Compile/Lock #l")]
とあるのは、「CompileメニューのLockにショートカットキー【Shift + l】を設定する」の意味です。「#」はシフトキーを表します。他のキーも使えるようですので、ネットで検索してください。ロック、アンロックでそれぞれ「l」「u」を使いました。
コンパイルを止めたければ shift + l
コンパイルを再開したければ shift + u
ただ、ロックしておくと実行キー(右向き三角のボタン)を押してもコンパイルしてくれませんでしたのでご注意。しばらくこれで使ってみて、問題があったらご報告します。
追記(2024年1月28日)
時々、動作が不安定です……。当たり前の要求、右向き三角のキーを押したとき(そしてそのときだけ)にコンパイルする(画像などアセットの変更すべて)、というふうにして欲しいだけなのに……。右向き三角でプログラムが実行されず、以降キーを受け付けなくなることがあったりします。プロジェクトの再起動をすると動くけど。何とかならないものか。