常用Unity平台解释

有关Unity平台问题一些说明
工程中涉及到的平台有4个,分别是Unity编辑器,Android平台,IOS平台,PC平台,判断方法有两种,第一种是使用宏预编译,第二种是Runtime实时判断 分别解释一下:

第一种:宏预编译
Unity编辑器:代码中使用UNITY_EDITOR宏包裹的代码只能在Unity编辑器下使用。这里面还有专门针对苹果系统有UNITY_EDITOR_OSX和Windows系统的宏UNITY_EDITOR_WIN
Android平台:代码中使用UNITY_ANDROID包裹
IOS平台:代码中使用UNITY_IOS包裹
PC平台:代码中苹果系统有UNITY_STANDALONE_OSX宏包裹,Windows系统有UNITY_STANDALONE_WIN宏包裹

第二种:Runtime实时判断
Unity编辑器:苹果系统的Unity编辑器下使用Application.platformRuntimePlatform.OSXEditor,Windows系统的Unity编辑器下Application.platformRuntimePlatform.WindowsEditor
Android平台:用Application.platformRuntimePlatform.Android表示
IOS平台:用Application.platform
RuntimePlatform.IPhonePlayer表示
PC平台:苹果系统有Application.platformRuntimePlatform.OSXPlayer表示,Windows系统有Application.platformRuntimePlatform.WindowsPlayer宏表示

另外注意:
1.我们的Unity工程中特殊文件夹Editor中的所有东西都只能在Unity编辑器下面使用
2.工作中我们Unity编辑器切换到Android平台其实是融合的Unity编辑器平台和Android平台,也就是它即是Unity编辑器平台也是Android平台,切换到PC或者IOS同理

一些示例:
#if UNITY_EDITOR
只能Unity编辑器
#endif

#if UNITY_EDITOR || UNITY_STANDALONE_WIN
Unity编辑器或者 Windows系统PC包内
#endif

#if !UNITY_EDITOR && UNITY_ANDROID
只能Apk包内
#endif

#if !UNITY_EDITOR && UNITY_STANDALONE_WIN
只能Windows系统PC包内
#endif

猜你喜欢

转载自blog.csdn.net/qq_39642486/article/details/126179312