中〜大規模開発においてコンパイル時間を劇的に削減する `Assembly Definition` ですが、Editorコードとの正しい隔離境界を作らないとアセンブリ設計が破綻します。
\n\n具体的な解決方法
アセンブリ定義を用いてEditorコードを正しく隔離するための2ステップ手順です。
1. Editorフォルダ内に専用のasmdefを作成
`Assets/.../MyFeature/Editor` などのフォルダ直下で右クリックし、`Create > Assembly Definition` を作成します(例: `MyFeature.Editor`)。
2. アセンブリ設定(プラットフォーム制限)の指定
作成した `MyFeature.Editor` アセットを選択し、インスペクターで以下を設定し、「Apply」を押します。
- Platforms: **`Editor` のみにチェックを入れる** (他のモバイルやPCプラットフォームのチェックはすべて外す)
- Assembly Definition References: ➔ **`MyFeature (ランタイム側)` のアセンブリを追加**して関連付けます。
[MyFeature.Editor.asmdef]
☑ Editor (Only Platform Checked)
▼ Assembly Definition References
[+] MyFeature (Runtime Assembly) <-- 参照先を追加してリンクする
※これにより、Editorアセンブリはランタイムのプログラムにアクセス可能になり、同時に実機ビルド時にはエディタアセンブリ全体が自動でコンパイル対象から完全に除外されるため、ビルド時のアセンブリエラーが解決します。