这是 Unity 5 [资产, 资源和资源管理系列文章]的第二篇。
这篇文章涵盖了 Unity 序列化系统的底层知识和 Unity 怎么在它的编辑器及运行时维持不同对象的稳定的引用,理解怎么样在 Unity 中高效的加载和卸载资产。正确的资产管理是保持低内存和快速加载的关键。
资产和对象的内部
要理解怎么样正确的管理数据,Unity 怎么鉴别和序列化数据很重要。其中首先的关键点是理解 资产 和 对象(UnityEngine.Objects) 的区别。
一个资产是存储在 Unity Project 中资产文件夹下的文件。比如纹理文件,材质文件和 FBX 文件都是资产。有些资产包含 Unity 原生数据格式,比如材质。而有些资产需要转换成 Unity 原生数据格式,比如 FBX 文件。
一个 UnityEngine.Object 或者大写字母 O 的 Object,是个序列化数据集合,用来表述某个资源的具体实例。它可以是任何 Unity 引擎使用的资源,比如一个网格,一个精灵,一个音频剪辑和一个动画片段。所有的对象都是 UnityEngine.Object 的子类。
在 Unity 中基本所有的对象类型都是内置的,除了两种特殊的类型。