UnityのプログラミングはC#を使うのが一般的です。CやC++をやってきた人であればグローバルな#defineが使えないかと思うことでしょう。
C#には#defineディレクティブがあります。ファイルに定義するものなので、他のファイルでこれを参照することができません。CやC++にある#includeディレクティブがC#にはないので、定義はファイルごとにしていかなければなりません。(C#で使えるプリプロセッサディレクティブはここにあるものです。)
グローバルな#defineを行うには、Unity Editorにシンボル(文字列)を登録することで可能です。
Player Settings->Other Settings->Configurationのところに以下のようにScripting Define Symbolsという枠があります。各プラットフォームごとにありますので、定義を有効にしたいプラットフォームを選択してScripting Define Symbolsに設定を行ってください。
定義の仕方は、
TEST;TEST2;TEST3
というようにセミコロンで各定義を区切って入力してください。
Unityのマニュアルではこのページの下部に「プラットフォームのカスタム定義」と「グローバルのカスタム定義」という内容が書いてあります。上で説明したのは「プラットフォームのカスタム定義」になります。
「グローバルのカスタム定義」は専用の定義ファイルを用意するので、使っていると結構面倒です。複数のプラットフォームで同じ定義をしたいときにこれを使います。
コメント