Unity3D引擎是一款这几年特别火爆3D游戏引擎,大家都知道Unity3D引擎是跨平台的。所谓跨平台就是说开发者只需要写一套逻辑代码,即可发布到各个平台,如Android,PC,iOS等。那为何Unity3D能够做到跨平台呢?之前没有仔细去研究过,只是大概的知道使用了Mono这么同一个跨平台运行环境。那么Mono为何又能跨平台呢,趁着最近有点时间,把之前看到的一篇写的很不错的文章和一些知识点做个简单的整理记录:
- Unity3D引擎为何能够跨平台:因为Unity3D引擎使用了Mono这么一个运行环境,我们编写的游戏逻辑脚本全都由相应的编译器编译成一种中间语言CIL(Common Intermediate Language),这种指令集可以运行在任何支持CLI(Common Language Infrastructure,国际标准ECMA335)标准的环境中(如Mono和.NET的CLR(Common Language Runtime))。
- Mono运行环境为何能够跨平台:因为Mono是基于CLI(Common Language Infrastructure)的一种实现,该标准描述了一个允许多种高级语言在不为特定硬件架构重写的前提下运行在多个不同平台伤的可