Unity3D是一个跨平台的开发工具,支持的平台五花八门,常常开发一款游戏要发布到不同的平台,在不同的平台上会使用不同的代码,难道要我们各平台分别使用一套代码,单独编译一次吗?当然不用了。
Unity3D有一个功能叫平台依赖编译(Platform Dependent Compilation),它可以让我们简单地使用if...else...对不同平台的代码进行区分,当我们切换一个发布平台重新编译时,Unity3D使用自动编译相应代码,从而省去了繁琐的操作。
下边举一个例子:
function Awake() {
#if UNITY_ANDROID
Debug.Log("这里是安卓设备^_^");
#endif
#if UNITY_IPHONE
Debug.Log("这里是苹果设备>_<");
#endif
#if UNITY_STANDALONE_WIN
Debug.Log("我是从Windows的电脑上运行的T_T");
#endif
}
那么其它的平台怎么判断呢?请见官方手册。
要提醒一下的是,手册里还有对Unity3D版本的判断方法,和上边一样的方法哦!
另外Application.isEditor 和Application.isWebPlayer 也可以判断程序是否是在Unity3D IDE里运行,或者是否在WebPlayer里运行的。
原文链接:http://bbs.9ria.com/thread-173907-1-1.html