死ぬほど遅いUnityエディターを高速化するいくつかの方法

Unity Editorが……遅い

今やゲームの垣根をこえて利用されているUnityですが、プロジェクトの肥大化に伴って動作がモッサリするのが難点。

ぼくは個人で小規模なゲームを作っていますが、それでもひどい時にはコンパイル時間が30秒前後になり、Scriptを変更するたびに放置系アプリを確認できるほど待たされていました。

そんなUnity開発において無視できないモッサリ化を、様々な切り口から高速化する方法をご紹介します。

ファイルのインデックスを停止する(Windows 10)

Windows10では、ファイルやフォルダに自動で検索用のインデックスを作成しています。アセットをわざわざWindowsから検索することなんて無いので、無効にしましょう。

ファイルのインポートやビルドが高速化します。

手順1:対象フォルダのプロパティを開く

フォルダ単位で設定します。Unity用のプロジェクトをまとめて保存しているフォルダを対象にするといいでしょう。

フォルダを右クリックし、プロパティを選択します。

手順2:属性の詳細を変更する

詳細設定をクリックすると、「属性の詳細」ウィンドウが現れるので、「このフォルダー内のファイルに対し、プロパティだけでなくコンテンツにもインデックスをつける」をオフにしましょう。

手順3:変更を適用する

OKを押した後にダイアログが出てきたら、「変更をこのフォルダー、サブフォルダおよびファイルに適用する」を選択しましょう。

ファイルの数が多いと時間がかかりますが、バックグラウンドで進行するので作業に支障はありません。気長に待ちましょう。

内容の圧縮を無効化する

フォルダにこんな青い矢印がついていませんか?

実はこれ、Windowsが自動でファイルを圧縮したことを示すマークです。
容量の削減にはなりますが、当然ファイルへの読み書きは遅くなります。

容量とスピードのどちらを取るかはトレードオフですが、現在開発中のプロジェクトだけでも無効化することをおすすめします。

コンパイル・アセットのインポート・ビルドが高速化します。

簡単に設定できるものの中では、これが一番効果を実感できました。

手順1:対象フォルダの詳細設定を開く

先ほどと同様、対象フォルダを右クリックして「詳細設定」をクリックし、「内容を圧縮してディスク領域を節約する」のチェックを外します。

OKを押し、「変更をこのフォルダー、サブフォルダおよびファイルに適用する」 を選択します。

セキュリティソフトの例外に追加する

セキュリティソフトは、ファイルへのアクセスや追加があるたびに、怪しいものではないか裏でスキャンしています。
(何も入れていなくても、Windows10に標準で備わっています)

大事な機能ではありますが、Unityプロジェクトの中にウイルスが混入することなんてほぼないので、フォルダを例外に指定しましょう。

コンパイル・アセットのインポート・ビルドが高速化します。

セキュリティソフトによって異なるので、いくつかリンクを貼っておきます。

載っていないものでも、大体は設定項目のどこかに例外フォルダを指定する項目があるはずです。

Unity2018.3以降にアップデートする

Unity 2018.3からC#7.3が使えるようになり、Scriptの変更部分だけをリコンパイルする高速なコンパイラーが使えるようになりました。

2017以前を使っていたり、企業で開発している場合は難しいですが、なるべく2018.3以降にすることをおすすめします。

コンパイルが速くなる。

特筆すべきことがないので、手順は省略します。プロジェクトが壊れないよう、必ず事前にバックアップを取っておきましょう。

Assembly Definition を設定する

Scriptのアセンブリを複数に分割することでコンパイル対象を制限し、高速化を図るUnityの機能です。

ある程度Scriptに理解がないと難しいですが、正しく設定すれば大幅にコンパイル時間を短縮させることができます。

すでにたくさんの方がまとめてくださっているので、詳細はそちらに譲ります。

【Unity】Assembly Definition Filesという神機能

注意点は「Auto Referenced」をオフにしないと、ほとんど変わらないということです。Assembly-Chrarpからの参照がないものに関しては、基本的にオフにしておきましょう。

SSDに換装する

身も蓋もないことを言いますが、物理的な改善こそ最も効果がある最適化です。
SSDはUnityに限らず、OSの起動やファイルの作成・コピーなど、おはようからおやすみまで全ての動作を劇的に高速化します。

資金に余裕があるようでしたら、HDDからの換装をおすすめします。

まとめ

一部むずかしいものもありますが、ほとんどが初回のみの簡単な設定で終わるものばかりです。

もっさりした開発環境はモチベーションを低下させます。

できるものから改善して、快適なゲーム開発環境を手に入れましょう!

 この記事をシェアする

ABOUTこの記事をかいた人

インディーゲーム開発者。30歳目前。 学生時代、ツクールVXにハマりすぎて不登校に。 専門学校に通い、ゲーム会社に就職するも花開かず退職。 以後、個人でゲームを作りながら生きていく道を探している。 SEKIROとオーバーウォッチが大好きで、「プレイした者の心に爪痕を残すゲームを作る」のが夢。