Unity-当前版本是否生成本机代码

Unity - does the current version generate native code or not?

本文关键字:本机代码 是否 当前版本 Unity-      更新时间:2023-10-16

在这里,我可以看到Unity文档说它比本机代码慢50%:http://docs.unity3d.com/412/412/documentation/scriptreferention/scriptreference/index.script_script_compilation_compilation_28advanced29.html

在这里说有一个IL2CPP编译器,该编译器获得了C 代码,该代码已编译为本机代码。那么现在是创建本机代码,还是慢50%?:)http://blogs.unity3d.com/2015/05/06/an-indroduction-to-ilcpp-internals/http://blogs.unity3d.com/2014/05/20/the-future-of-scripting-in-unity/

您所引用的Unity的文档很旧,即使在编写时,我也会想知道这些性能号码。通常,衡量和报告的性能要比50%这样的数字表达要复杂得多。

如果您想了解有关IL2CPP的更多信息,请查看此博客文章系列。

基于我们在Unity的基准测试,我们看到使用IL2CPP的脚本有限代码的性能要比Mono的Unity版本更好。您可以找到我们在这里发布的一个基准。

有一些警告要记住:

  • Unity使用单声道运行时的旧版本(大约2011年)。较新的版本更好 - 我们现在正在升级运行时。
  • 大多数游戏代码不是脚本限制的,通常是gpu的。
  • 生成的C 代码仍在提供托管语言的安全性,因此它可以进行数组界限。
  • 单声道和IL2CPP编译器之间的性能差异将根据平台而变化。在某些平台上,Mono AOT编译器生产机器代码以及C 编译器。在其他平台上并非如此。