Unity中IL2CPP和Mono的区别

是什么?

脚本后处理(Scripting Backend)的方式。

在哪里设置?

PlayerSettings -> OtherSettings -> Configuration -> Scripting Backend

Mono

是什么?

一个自由开放源码项目。

目标

在尽可能多的平台上使.NET标准的东西能正常运行。即能让.NET代码跨平台运行。

流程

  1. 通过C#编译器msc,将C#编译为IL(Intermediate Language,中间语言)
  2. 通过Mono运行时中的 编译器将IL编译为对应平台的原生代码

IL2CPP

在得到IL后,将它重新变成C++代码,再由各平台的C++编译器直接编译成能执行的原生代码。

二者区别

Mono构建更快
IL2CPP运行效率更高,且生成的C++代码是可以调试的。

参考

Mono和IL2CPP的区别

你可能感兴趣的:(Unity中IL2CPP和Mono的区别)