[游戏开发][Unity]宏定义的使用

这篇具有很好参考价值的文章主要介绍了[游戏开发][Unity]宏定义的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

平台判定的几种写法

第一种#if 与#endif写法

//Android平台
#if UNITY_ANDROID
   Debug.Log("Android");
#endif
//苹果平台
#if UNITY_IPHONE
    Debug.Log("IOS");
#endif
//Windows平台
#if UNITY_STANDALONE_WIN
    Debug.Log("Windows");
#endif

第二种 #if #else #endif写法 ,支持逻辑运算符!

// #if !UNITY_EDITOR逻辑运算符!同样适用
#if UNITY_EDITOR    
    const string GAMEDLL = "__Internal";
#else
    const string GAMEDLL = "gamed";
#endif

第三种 #if #elif #endif写法

#if UNITY_EDITOR 
    const string GAMEDLL = "Editor";
#elif UNITY_IPHONE
    const string GAMEDLL = "IOS";
#elif UNITY_ANDROID
    const string GAMEDLL = "Android";
#endif

C#代码判定平台

if (Application.platform == RuntimePlatform.Android)
    {
        Debug.Log("Android");
    }else if(Application.platform == RuntimePlatform.IPhonePlayer)
    {
        Debug.Log("IOS");
    }
    else if (Application.platform == RuntimePlatform.WindowsEditor)
    {
        Debug.Log("Window");
    }
}

Unity支持的平台#define指令如下:

属性:

功能:

UNITY_EDITOR

从游戏代码调用Unity编辑器脚本的#define指令。

UNITY_EDITOR_WIN

Windows上编辑器代码的#define指令。

UNITY_EDITOR_OSX

Mac OS X上编辑器代码的#define指令

UNITY_STANDALONE_OSX

#define伪指令,专门用于编译/执行Mac OS X(包括Universal,PPC和Intel体系结构)的代码。

UNITY_STANDALONE_WIN

#define指令,用于编译/执行专门针对Windows独立应用程序的代码。

UNITY_STANDALONE_LINUX

#define指令,用于编译/执行专门针对Linux独立应用程序的代码。

UNITY_STANDALONE

#define伪指令,用于编译/执行任何独立平台(Mac OS X,Windows或Linux)的代码。

UNITY_WII

编译/执行Wii控制台代码的#define指令。

UNITY_IOS

编译/执行iOS平台代码的#define指令。

UNITY_IPHONE

已过时。改用UNITY_IOS。

UNITY_ANDROID

Android平台的#define指令。

UNITY_PS4

运行PlayStation 4代码的#define指令。

UNITY_SAMSUNGTV

执行三星电视代码的#define指令。

UNITY_XBOXONE

执行Xbox One代码的#define指令。

UNITY_TIZEN

Tizen平台的#define指令。

UNITY_TVOS

Apple TV平台的#define指令。

UNITY_WSA

通用Windows平台的#define指令。此外,NETFX_CORE是在针对.NET Core编译C#文件并使用.NET脚本后端时定义的。

UNITY_WSA_10_0

通用Windows平台的#define指令。另外,WINDOWS_UWP是在针对.NET Core编译C#文件时定义的。

UNITY_WINRT

与UNITY_WSA相同。

UNITY_WINRT_10_0

相当于UNITY_WSA_10_0

UNITY_WEBGL

WebGL的#define指令。

UNITY_FACEBOOK

Facebook平台的#define指令(WebGL或Windows独立版)。

UNITY_ADS

从游戏代码调用Unity Ads方法的#define指令。版本5.2及以上。

UNITY_ANALYTICS

从游戏代码调用Unity Analytics方法的#define指令。版本5.2及以上。

UNITY_ASSERTIONS

断言控制过程的#define指令。文章来源地址https://www.toymoban.com/news/detail-839960.html


自定义宏

到了这里,关于[游戏开发][Unity]宏定义的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包