IL2CPP是Unity内部开发的一款创新型脚本技术。它能极大地提高项目中所有脚本的性能,并且完美兼容当前iOS构建所使用的Mono-AOT解决方案。

我们可以使用IL2CPP将脚本快速移植到新平台(例如WebGL等)及架构,ARM64(64位iOS系统架构)就是其中之一。使用Unity4.6.2就可以选择Universal构建同时支持32位及64位iOS系统的应用。

大幅度性能提升

在IL2CPP项目的alpha和beta阶段,我们从Unity社区反馈中获益良多。而且,据测试过64位iOS及IL2CPP的用户们报告,使用新的脚本底层运行速度大大加快。

举个例子,Andrew Witte在他的32位iOS设备上运行了RayTraceBenchmark ,得到如下数据:

当然,我们最关心的还是场景,但从我们的基准测试中也可以看出显著的性能改善。

下图是用UnityScript编写的JPEG解码器运行耗时比较:

下面是一个Mandelbrot基准测试,它是 测试WebGL平台上Unity性能基准的一部分;图示表明了IL2CPP上明显的性能提升。

开启64位iOS移植之旅

在此新版本中,要让你的项目支持IL2CPP脚本底层及64位iOS系统只需点几下鼠标即可。在Player Settings面板的iOS标签下有两个下拉列表:“Scripting Backend” 和 “Architecture”。

在scripting backend下拉列表中选择IL2CPP来支持64位iOS系统。默认Architecture使用的是“Universal”,这意味着构建的应用会包含ARMv7和ARM64两个二进制部分。

如果现有项目中包含了插件,你可能需要将它们升级到可以支持64位iOS及IL2CPP的版本。我们已经与Unity插件开发商Prime31合作将他们所有的插件都升级到了iOS64。你可以在这里下载。

以上步骤完成后,将你的工程导出到Xcode。注意,买二手游戏账号由于IL2CPP会将脚本转换为C++再导入Xcode工程,你需要设置Configuration为Release,以便Clang编译器最大程度地优化IL2CPP生成的代码。

在Xcode 6中的设置过程如下图:

现在可以在设备上运行你的项目了。如果Player Settings中Architecture设置为“Universal”,那不管是32位还是64位设备,应用会自动运行相应的代码。你可以在Unity用户手册中查看 详细的 iOS 64位升级指南。

注意事项:

WebRequest/WebClient API当前可访问但没有具体实现。

任何需要委托BeginInvoke/EndInvoke的异步套接字功能目前都未实现。我们会在后续发布的补丁中解决这个问题。

  • 尽管其它委托方法都能正常工作但BeginInvoke/EndInvoke还不行。我们会在后续发布的补丁中解决这个问题。
  • RakNet暂未移植到IL2CPP,如果项目或第三方库中引用到它会有问题。我们会在后续发布的补丁中解决这个问题。
  • 使用IL2CPP时后台会一直运行Stripping。这可能需要采取措施来防止裁掉使用中的类型。
  • 如果将Stripping设置为micro-mscorlib,可能会导致类型缺失的编译错误。我们计划在以后的版本中使用IL2CPP时彻底禁用该选项。
  • Xcode编译时间太长。主要原因是需要编译的代码量过大。
  • 暂不支持Managed Debugger。这已经在计划中了。同时,已经有测试用户使用Xcode Debugger成功调试了脚本代码。
  • 使用IL2CPP脚本时开启Xcode内置Profiler会导致编译错误。

我们非常清楚上述的某些条目会导致移植过程延误。自从苹果10月20日宣布 新上传到App Store的iOS应用都必须支持64位系统以来,我们也马不停蹄地忙活着,以前所未有的速度及时处理Bug反馈同时每周发布更新版本。所有相关工作人员都非常关心并尽快解决每一个问题。

如果你的应用已经发布到App Store,我们建议你继续使用Mono构建ARMv7来更新应用。苹果表示截至6月1日前都可以这样做。进一步的建议是尽快着手使用IL2CPP对你的项目进行内测。

Unity4.6.2发布 支持64位iOS相关推荐

  1. IOS音频格式之AMR和WAV互转(更新支持64位)

    转自:http://blog.csdn.net/gf771115/article/details/45643271 //-----------------2015.3.20-------------- ...

  2. c4d支持mac系统渲染器有哪些_在macOS Catalina发布前检查哪些应用程序不支持64位系统...

    macOS Catalina 让你喜欢的种种 Mac 体验都更进一步.你可以领略音乐.播客这两款全新 Mac app 的表演:在 Mac 上畅享各款自己心爱的 iPad app:拿起 iPad 和 A ...

  3. 砍掉 16 位、32 位,英特尔提出 x86-S ,直接支持 64 位架构!

    整理 | 屠敏,郑丽媛 出品 | CSDN(ID:CSDNnews) 落后了自然要被淘汰,曾经的经典因此也正在逐步消失. 随着 64 位操作系统的普及以及现代软件对更多内存需求的不断增长,很多用户选择 ...

  4. activex控件 新对象 ocx 初始化_Office已经支持64位的树控件Treeview了

    之前在使用Office365时发现微软其实已经悄悄地开始提供了64位的Treeview树控件,只是并没有公开宣布.当时是在一个网友的电脑上说他可以在64位Excel中可直接使用64位树控件,当时以为他 ...

  5. java 位运算取8位_Java 9 AOT 试用:仅支持 64 位 Linux和java.base 模块编译

    Java 9 引入了 aot 编译方式,能够将 class 文件直接编译成可执行二进制文件.目前 Java 9 的 early access 版本已经提供了编译工具,让我们来看看它的功能吧. 注意:按 ...

  6. found linux系统wget出现not_Java 9 AOT 试用:仅支持 64 位 Linux和java.base 模块编译

    Java 9 引入了 aot 编译方式,能够将 class 文件直接编译成可执行二进制文件.目前 Java 9 的 early access 版本已经提供了编译工具,让我们来看看它的功能吧. 注意:按 ...

  7. Google Paly 上传支持64 位设备APP

    此前,在 Google Paly 上传应用,出现如下错误导致无法上传应用(下次补上错误截图). 此版本不符合 Google Play 关于提供 64 位版本应用的规定 以下 APK 或 App Bun ...

  8. 注意啦,还没有支持64位系统的App开发者,务必在12月底前完成这件事

    注意啦!还没有支持64位系统的App开发者务必在12月底前完成这件事! 近日,国内五大应用商店宣布,将共同推进国内安卓生态对64位架构的升级支持,目的是更好提升APP性能体验并降低功耗. 友盟+ U- ...

  9. steam linux 64位,Valve可能会很快为Linux发布原生64位Steam客户端

    原标题:Valve可能会很快为Linux发布原生64位Steam客户端 Valve在今天发布了一款针对Windows.Mac和Linux平台的全新稳定版本的Steam客户端,仅做了两项改动,其中一项改 ...

最新文章

  1. 另一个.java文件调用_java - 如何调用另一个类“写文件”的方法? - SO中文参考 - www.soinside.com...
  2. Java注释(Annotation)详解
  3. vb 变量赋值为当前选定单元格_第7篇:根据Excel选定行对Word模板填充数据(补充修改)...
  4. 云炬随笔20211011
  5. 一文读懂 | 进程怎么绑定 CPU
  6. (软件工程复习核心重点)第一章软件工程概论-第二节:软件工程
  7. p46_IPv4地址
  8. 1.3 线性回归的sklearn实现
  9. iPhone文件系统:创建、重命名以及删除文件
  10. java 表格添加监听_关于Oracle用java实时监听oracle对表的DML操作【技术贴】
  11. linear-gradient常用实现效果
  12. 【语音加密】基于matlab GUI语音信号加密解密(带面板)【含Matlab源码 181期】
  13. J-link固件修复记录
  14. 谷歌浏览器Chrome离线安装包下载地址
  15. 关于LTE下行导频信号
  16. 4.OpenCV视频处理
  17. 【图解CAN总线】-6-classic CAN 2.0总线网络“负载率”计算
  18. sdkman软件开发工具包管理器
  19. MySQL基础与navicat使用
  20. 什么是SAP Cloud Platform(SAP云平台) ?

热门文章

  1. 推荐一位BAT数据大神!(附联系方式)
  2. php重量,在PHP中按重量生成随机结果?
  3. 蓝卡在哪里_什么是蓝卡,魅力在哪里,让申请者为之着迷?
  4. Go Channel 详解
  5. BZOJ 4720: [Noip2016]换教室
  6. bzoj2753: [SCOI2012]滑雪与时间胶囊
  7. xml 转map dom4j
  8. 《Programming WPF》翻译 第8章 2.Timeline
  9. (转)C#2.0泛型--Dictionary,List用法
  10. 查看MS-SQL的安装版本及补丁