ScriptDefineSymbolsにDEBUG,RELEASE,MASTERといったプリプロセッサ用定義を追加・切り替えする
PlayerSettingsに追加できるScriptDefineSymbolだが、
過去の経験でも当然のように???_DEBUG,???_RELEASE,???_MASTERといった定義を追加してビルドを切り分けていたので
ツールのメニューから定義の追加・切り替えを行えるものを作成した。
作成の際はPlayMakerがやっている一部処理を参考にした。
追加・切り替え対象のBuildTargetGroupはテーブル化した。(全部やる必要ないし)
よくDebug.Log等といったデバッグ時にしか呼ばない、リリース・マスター版では通ってほしくない処理は
プリプロセッサで囲んでコンパイルすら通さないという対応が絶対的に安全なので、
これをしていないコードを見ると発狂しそうになる。
たまにDebugクラスを上書きで置き換えたり、そもそもUnity側でログが吐かれないようにオプションで切る、
といった対応をするプロジェクトがあるが、正直甘い、甘すぎる。
コンパイルにすら通さないのが定石である。