Unity的这一功能被命名为“依赖于平台的编译”。这包含了一些预编译处理指令,让你可以专门的针对不同的平台分开编译和执行一段代码。
此外,你可以在编辑器下执行一些代码用于测试而不影响你编译到手机或者其他平台的代码。
平台定义:
Unity对您的脚本支持的平台定义有:
| 
 
  | 
 
  | 
| 
 UNITY_EDITOR  | 
 用于执行UnityEditor模式下的脚本的定义.  | 
| 
 UNITY_STANDALONE_OSX  | 
 用于编译和执行专门针对Mac OS的代码的平台定义.  | 
| 
 UNITY_DASHBOARD_WIDGET  | 
 为创建Dashboard widget工具的代码的平台定义.  | 
| 
 UNITY_STANDALONE_WIN  | 
 专门为Windows的独立应用程序编译/执行代码的平台定义.  | 
| 
 UNITY_STANDALONE_LINUX  | 
 专门为Linux的独立应用程序编译/执行代码的平台定义.  | 
| 
 UNITY_STANDALONE  | 
 为任何平台的独立应用程序编译/执行代码的平台定义(包括Windows、Mac、Linux).  | 
| 
 UNITY_WEBPLAYER  | 
 网页播放器的内容的平台定义 (这包括Windows和Mac的Web播放器的可执行文件).  | 
| 
 UNITY_WII  | 
 专门为Wii游戏机编译和执行代码的平台定义.  | 
| 
 UNITY_IPHONE  | 
 为iPhone平台的编译和执行代码的平台定义.  | 
| 
 UNITY_ANDROID  | 
 为安卓平台的编译和执行代码的平台定义.  | 
| 
 UNITY_PS3  | 
 为PS3编译和执行代码的平台定义.  | 
| 
 UNITY_XBOX360  | 
 为XBOX360编译和执行代码的平台定义.  | 
| 
 UNITY_NACL  | 
 为谷歌客户端编译和执行代码的平台定义. (这是对 UNITY_WEBPLAYER的补充).  | 
| 
 UNITY_FLASH  | 
 为AdobeFlash编译和执行代码的平台定义. 
  | 
你也可以为了区分Unity引擎的不同版本有选择的编译代码.
目前支持的是:
| 
 UNITY_2_6  | 
 Unity 2.6的平台定义.  | 
| 
 UNITY_2_6_1  | 
 Unity 2.6.1的平台定义.  | 
| 
 UNITY_3_0  | 
 Unity 3.0的平台定义.  | 
| 
 UNITY_3_0_0  | 
 Unity 3.0.0的平台定义.  | 
| 
 UNITY_3_1  | 
 Unity 3.1的平台定义..  | 
| 
 UNITY_3_2  | 
 Unity 3.2的平台定义.  | 
| 
 UNITY_3_3  | 
 Unity 3.3的平台定义.  | 
| 
 UNITY_3_4  | 
 Unity 3.4的平台定义.  | 
| 
 UNITY_3_5  | 
 Unity 3.5的平台定义.  | 
| 
 UNITY_4_0  | 
 Unity 4.0的平台定义.  | 
| 
 UNITY_4_0_1  | 
 Unity 4.0.1的平台定义.  | 
| 
 UNITY_4_1  | 
 Unity 4.1的平台定义.  | 
原文:http://blog.csdn.net/unity3d_xyz/article/details/40081215