unity存储数值文件的方式有很多,目前常用的有xml,csv,json等,xml与json都是节点式,csv的话策划可直接在excel导出,相对方便一些,目前对这三种方式的性能消耗未作探究,目前公司项目使用的csv表格存储数值,所以暂时仅讨论如何用序列化的方式优化数据资源加载,对于本文未提及的部分,欢迎朋友们补充~
首先了解序列化,序列化就是将资源文件转换成二进制文件到某个文件夹内,这个过程只需一次,然后在运行或者游戏发布以后加载数据资源时就可以直接将二进制文件夹内的二进制资源反序列化,结果就跟load数据资源相同,但这么读取二进制文件将极大的提升加载速度,废话不多说,先看一个小的例子:
首先想要序列化需要引用
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization;
第三个是需要抛出异常时引用,然后创建一个类,相当于后面的csv表格文件
[Serializable]
public class ClassToSerialize
{
public int id = 1;
public string name = "jack";
public string Sex = "man";
}
记住要想序列化某一个数据类型,一定要在前面加上 [Serializable]
开始序列化
public void SerializeNow()<