宏定义的使用场合:
在程序中我们想要根据不同的运行环境去执行不同的代码时使用。比如我们在PC上和安卓上需要执行不同的代码,我们就可以使用Unity自带的宏定义来区分。
Unity中自带的宏定义:
UNITY_EDITOR 编译器调用;
UNITY_STANDALONE_OSX 专门为Max OS(包括Universal,PPC和Intelarchitectures)平台的定义。
UNITY_DASHBOARD_WIDGET Mac OS Dashboard widget (Mac OS仪表板小部件)。
UNITY_STANDALONE_WIN Windows 操作系统。
UNITY_STANDALONE_LINUX Linux的独立的应用程序。
UNITY_STANDALONE 独立的平台(Mac,Windows或Linux)。
UNITY_WEBPLAYER 网页播放器(包括Windows和Mac Web播放器可执行文件)。
UNITY_WII Wii游戏机平台。
UNITY_IPHONE iPhone平台。
UNITY_ANDROID Android平台。
UNITY_PS3 PlayStation 3。
UNITY_XBOX360 Xbox 360。
UNITY_NACL 谷歌原生客户端(使用这个必须另外使用UNITY_WEBPLAYER)。
UNITY_FLASH Adobe Flash。
编写方式:
#if UNITY_EDITOR
Debug.Log("UNITY_EDITOR");
#elif UNITY_ANDROID
Debug.Log("UNITY_ANDROID");
#endif
注:代码如果是灰色的,说明没有被执行,需要在Unity的编译面板中更改,File —>Build Settings—>Player Settings—>Other Settings.
注:如果需要填写多个宏定义需要用分号隔开