Unity中IL2CPP和Mono的区别
2021-12-08 本文已影响0人
全新的饭
是什么?
脚本后处理(Scripting Backend)的方式。
在哪里设置?
PlayerSettings -> OtherSettings -> Configuration -> Scripting Backend
Mono
是什么?
一个自由开放源码项目。
目标
在尽可能多的平台上使.NET标准的东西能正常运行。即能让.NET代码跨平台运行。
流程
- 通过C#编译器msc,将C#编译为IL(Intermediate Language,中间语言)
- 通过Mono运行时中的 编译器将IL编译为对应平台的原生代码
IL2CPP
在得到IL后,将它重新变成C++代码,再由各平台的C++编译器直接编译成能执行的原生代码。
二者区别
Mono构建更快
IL2CPP运行效率更高,且生成的C++代码是可以调试的。