目的
老生常谈了,反正就是提高性能,减少内存消耗,提升开发效率等等等。
资源加载的多种方式
阻塞型(同步)
- Resource.Load
Unity3D以Resources这个名字的文件夹作为根目录来加载资源其下面的资源文件。
当Unity3D的项目被Build构建时,会根据Resources文件夹中的内容产生序列化文件,这个序列化文件包括了metadata和indexing information。
indexing information包括了一个平衡的搜索树,可以通过Resources API 传递路径名字去找到资源在Resources下的位置,时间复杂度在O(n log(n))。
缺点:增加包体大小,加载时需要解压,消耗时间和性能。
- File read + AssetBundle.CreateFromMemory + AssetBundle.Load
睡觉了,明天写