1、Unity引擎是如何做到跨平台运行的
我们从基础概念开始,一步步走进真相:
程序集
一个.Net程序由一个或者多个程序集组成,程序集可以是库,也可以是应用程序。.Net中,库项目导出的文件格式为.dll,应用程序导出后的文件格式为.exe。
类似Flash项目,也是由库项目和应用程序项目组成。在Flash中,库项目导出后的文件格式为.swc,应用程序导出后的文件格式为.swf。
比如:一般Unity项目里包含这四个C#库项目:
vs编译之后,然后我们在项目目录的缓存目录Library\ScriptAssemblies下,能找到对应的四个dll文件:
CIL(Common Language Runtime)
刚才我们提到C#库项目导出之后生成的是一个DLL文件, 这个DLL文件里,存放的是CIL代码集。
它是微软在发布.Net框架的时候,一起发布的一个语言。CIL语言大概长这个样子:
里面有几个我们很熟悉的词汇,Hello,world,System.Consolve::WriteLine。没错,它的功能