Unityでのdefine

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のマニュアルではこのページの下部に「プラットフォームのカスタム定義」と「グローバルのカスタム定義」という内容が書いてあります。上で説明したのは「プラットフォームのカスタム定義」になります。
「グローバルのカスタム定義」は専用の定義ファイルを用意するので、使っていると結構面倒です。複数のプラットフォームで同じ定義をしたいときにこれを使います。

コメント

This website stores cookies on your computer. These cookies are used to provide a more personalized experience and to track your whereabouts around our website in compliance with the European General Data Protection Regulation. If you decide to to opt-out of any future tracking, a cookie will be setup in your browser to remember this choice for one year.

Accept or Deny

タイトルとURLをコピーしました