リリース用ビルドの時だけ不要なResourcesフォルダのデータを取り除くエディタ拡張を作ってみた

概要

Unity開発において、例えばデバッグ用のプレハブデータをResourcesフォルダに入れてたりする場合、リリース用ビルドでは要らないのでビルドに含めたくない、ということがあるかと思います。
本記事ではリリース用ビルドの時だけResourcesフォルダから特定のデータを取り除く方法の一例を紹介します。

Resourcesフォルダにあるデータはロード時間やビルド時間に影響してきますし、メモリ管理も大変になります。
ちょっとした規模のプロジェクトなら全然問題なのですが、大規模なプロジェクトになってくると響いてくるので、なるべく入れたくありません。
(Unity公式さんも使わないのがベストと言ってますし)

私のプロジェクトでは、超便利なデバッグアセット「SRDebugger」を利用していますが、このアセットはデバッグ用のプレハブデータがResoucresフォルダに入っています。
(SRDebuggerの解説はこちらの記事が非常に分かりやすいです)

SRDebuggerだと設定でリリース用ビルドでは表示させないようにすることもできますが、これは別にRescourcesフォルダからプレハブデータが消えるわけでもないので、今回は物理的に取り除くようにしました。

やり方

ビルドする前にResourcesフォルダをEditorフォルダに移動させて、ビルドが終わったらもとに戻すエディタ拡張を作成します。
また、開発用ビルドでは取り除かないようにもしておきます。

ソースコード

動作環境: Unity 2018.1 以降
iOSAndroid 実機動作確認済み
以下のコードをEditorフォルダに置き、必要に応じてディレクトリのパスを修正してください。