位置: 编程技术 - 正文

Unity3D平台依赖编译(unity3d 依赖注入)

编辑:rootadmin
Platform Dependent Compilation

推荐整理分享Unity3D平台依赖编译(unity3d 依赖注入),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity3dapi,unity依赖打包,unity assetbundle 依赖,unity3d 服务端,unity ab包依赖关系,unity3d服务器,unity bundle依赖,unity依赖打包,内容如对您有帮助,希望把文章链接给更多的朋友!

Unity includes a feature named “Platform Dependent Compilation”. This consists of some preprocessor directives that let you partition your scripts to compile and execute a section of code exclusively for one of the supported platforms.

Furthermore, you can run this code within the Editor, so you can compile the code specifically for your mobile/console and test it in the Editor!

Platform Defines

The platform defines that Unity supports for your scripts are:

Property:Function:UNITY_EDITORDefine for calling Unity Editor scripts from your game code.UNITY_EDITOR_WINPlatform define for editor code on Windows.UNITY_EDITOR_OSXPlatform define for editor code on Mac OSX.UNITY_STANDALONE_OSXPlatform define for compiling/executing code specifically for Mac OS (This includes Universal, PPC and Intel architectures).UNITY_DASHBOARD_WIDGETPlatform define when creating code for Mac OS dashboard widgets.UNITY_STANDALONE_WINUse this when you want to compile/execute code for Windows stand alone applications.UNITY_STANDALONE_LINUXUse this when you want to compile/execute code for Linux stand alone applications.UNITY_STANDALONEUse this to compile/execute code for any standalone platform (Mac, Windows or Linux).UNITY_WEBPLAYERPlatform define for web player content (this includes Windows and Mac Web player executables).UNITY_WIIPlatform define for compiling/executing code for the Wii console.UNITY_IPHONEPlatform define for compiling/executing code for the iPhone platform.UNITY_ANDROIDPlatform define for the Android platform.UNITY_PS3Platform define for running PlayStation 3 code.UNITY_XBOXPlatform define for executing Xbox code.UNITY_FLASHPlatform define when compiling code for Adobe Flash.UNITY_BLACKBERRYPlatform define for a Blackberry device.UNITY_WP8Platform define for Windows Phone 8.UNITY_METROPlatform define for Windows Store Apps (additionally NETFX_CORE is defined when compiling C# files against .NET Core).UNITY_WINRTEquivalent to UNITY_WP8 |UNITY_METRO

Also you can compile code selectively depending on the version of the engine you are working on. Currently the supported ones are:

UNITY_2_6Platform define for the major version of Unity 2.6.UNITY_2_6_1Platform define for specific version 2.6.1.UNITY_3_0Platform define for the major version of Unity 3.0.UNITY_3_0_0Platform define for specific version 3.0.0.UNITY_3_1Platform define for major version of Unity 3.1.UNITY_3_2Platform define for major version of Unity 3.2.UNITY_3_3Platform define for major version of Unity 3.3.UNITY_3_4Platform define for major version of Unity 3.4.UNITY_3_5Platform define for major version of Unity 3.5.UNITY_4_0Platform define for major version of Unity 4.0.UNITY_4_0_1Platform define for specific version 4.0.1.UNITY_4_1Platform define for major version of Unity 4.1.UNITY_4_2Platform define for major version of Unity 4.2.UNITY_4_3Platform define for major version of Unity 4.3.UNITY_4_5Platform define for major version of Unity 4.5.

Note: For versions before 2.6.0 there are no platform defines as this feature was first introduced in that version.

Testing precompiled code.

We are going to show a small example of how to use the precompiled code. This will simply print a message that depends on the platform you have selected to build your target.

First of all, select the platform you want to test your code against by clicking on File -> Build Settings. This will bring the build settings window to select your target platform.

Build Settings window with the WebPlayer Selected as Target platform.

Select the platform you want to test your precompiled code against and press the Switch Editor button to tell Unity which platform you are targeting.

Create a script and copy/paste this code:-

Unity3D平台依赖编译(unity3d 依赖注入)

Then, depending on which platform you selected, one of the messages will get printed on the Unity console when you press play.

Note that in C# you can use a CONDITIONAL attribute which is a more clean, less error-prone way of stripping out functions, see addition to the basic #if compiler directive, you can also use a multiway test in C# and JavaScript:-

However, Boo currently supports only the ifdef directive.

Platform Custom Defines

It is also possible to add to the built-in selection of defines by supplying your own. In the Other Settings panel of the Player Settings, you will see the Scripting Define Symbols textbox.

Here, you can enter the names of the symbols you want to define for that particular platform, separated by semicolons. These symbols can then be used as the conditions for #if directives just like the built-in ones.

Global Custom Defines

You can define your own preprocessor directives to control which code gets included when compiling. To do this you must add a text file with the extra directives to the “Assets/” folder. The name of the file depends on the language you are using, and the extension is .rsp:

C#<Project Path>/Assets/smcs.rspC# - Editor Scripts<Project Path>/Assets/gmcs.rspUnityScript<Project Path>/Assets/us.rspBoo<Project Path>/Assets/boo.rsp

As an example, if you include the single line “-define:UNITY_DEBUG” in your smcs.rsp file the define UNITY_DEBUGwill exist as a global define for C# scripts, except for Editor scripts.

Every time you make changes to .rsp files you will need to recompile for them to be effective. You can do this by updating or reimporting a single script (.js, .cs or .boo) file.

If you want to modify only global defines, you should use Scripting Define Symbols in Player Settings, because this will cover all the compilers. If you choose the .rsp files instead, you’ll have to provide one file for every compiler Unity uses, and you won’t know when one or another compiler is used.

The use of the .rsp files is described in the help section of the smcs application which is included in the Editor installation folder. You can get more information by running “smcs -help”. Also, bear in mind the .rsp file needs to match the compiler being invoked. For example, when targeting the web player, smcs is used with smcs.rsp; when targeting standalone players, gmcs is used with gmcs.rsp; when targeting MS compiler, csc is used with csc.rsp; and so on.

原文地址点击这里

物理引擎——刚体Rigidbody(一) 一、如果添加刚体组件菜单Component下的Phsics-Rigidbody添加刚体组件Rigidbody.添加了刚体组件的物体才能够受到物理引擎的影响,比如受到重力坠落。二、刚

unity射击游戏:超萌射手(3)怪物生成和射击逻辑 前言本文由作者@zx一路飞奔出品,转载请注明出处文章地址:

unity学习之难题解决 unity学习,希望我的博客能给喜欢unity的朋友带来帮助今天做项目主要做了连接数据库,并且数要插入数据库表中,但我做的时候数据库连接是连接上了

标签: unity3d 依赖注入

本文链接地址:https://www.jiuchutong.com/biancheng/378807.html 转载请保留说明!

上一篇:unity3d shader之Julia集和Mandelbrot集绘制美丽图案 (二)

下一篇:物理引擎——刚体Rigidbody(一)(物理引擎演示)

  • 出口免税进项税额转出怎么计算
  • 暴利税怎么计算
  • 差旅费是计入
  • 公章损坏更换的费用怎么记账
  • 预付卡发票可以报销吗?
  • 特殊性税务处理所得税怎么算
  • 其他应收款资产负债表是负数怎么办
  • 跨区预缴增值税怎么做账
  • 小规模未达起征点销售额是多少
  • 企业关联方利息支出税前扣除的标准扣除
  • 期末存货跌价准备金额的确定
  • 房子免租期
  • 个人给公司垫付款起诉状
  • 企业房产税优惠政策2022
  • 现金折扣税前扣除
  • 安装工程劳务合同
  • 个人技术转让所得需要交税吗
  • 公司的企业所得税和个人所得税
  • 房地产企业收到定金 什么时候交增值税 账务处理
  • 文化用品有哪些种类
  • 购买的商品入库会计分录怎么写
  • 购买材料,材料未验收入库,货款未付会计分录
  • 提高并购成本
  • 创业带动的就业是什么
  • 出口的货物因质量问题被扣款
  • 固定资产处置流程
  • 会计审核票据如何签字
  • 如何彻底清洁
  • win7电脑怎么开
  • 收到招标公司开的发票
  • 国际重复征税的类型及范围
  • 无法安装字体,显示字体无效win10
  • 汇算清缴无形资产摊销填哪里
  • win10预览版21337
  • 公司注销做账
  • 租金没有收进来,房产税要交吗
  • lnmgr.exe是什么
  • linux 文件修改
  • 发包工程补付工程款分录
  • 资产负债表应付账款怎么填列
  • 企业所得税如何更正申报
  • 资产变现率减资产负债率
  • 增值税报了所得税未报可以买发票吗
  • vue生成二维码分享
  • vue实战开发项目视频
  • 采购员出差预借差旅费
  • vue从入门到精通教程
  • 支付押金无法收取怎么办
  • 外地工程预缴的个人所得税是什么申报
  • 发票认证的目的和意义
  • 留言板系统php
  • 税法上未投入使用的无形资产摊销所得税能扣除吗
  • 外贸客户付款方式
  • 企业工会经费的会计分录
  • 中级会计报名必须满4年吗
  • 不交社保的职业
  • 金银首饰以旧换新增值税处理
  • 营改增试点行业顺序
  • 固定资产盘亏如何做账务处理
  • 给客户的回扣怎么表达
  • 企业净资产如何算
  • 投标保证金以现金形式转为履约保证金
  • 酒店支付清洗费属于什么会计科目
  • 会计的主要目标是提供什么和什么
  • 关于mysql数据库服务登录下列描述正确的是
  • Win10预览版拆弹
  • centos下载软件并安装
  • win7文件夹选项在哪里打开
  • NDSTray.exe - NDSTray是什么进程 有什么用
  • 粉碎文件的快捷键
  • 安卓机虚拟键盘
  • 合并一个文件夹下多个工作簿
  • node.js怎么用
  • input按钮的事件处理大全
  • jquery详解
  • 运用python编写程序
  • 手机银行如何查询明细
  • 江苏省地税局公众号关注
  • 车辆保险增值税税率是多少
  • 汽车票换票需要手续费吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设