1. 序列化将对象转化成某种格式(如二进制、json、xml、csv等),以供下一步处理。 2. 持久化将内存数据以某种方式(如数据库)保存到外存(如硬盘),供以后使用。
序列化技术侧重于解决对象的传输问题,持久化技术侧重于解决对象的存储问题。
2019.6.20 更新: unity 2019.3已经可以支持对引用类型的序列化。因此可以在inspector中显示接口类型的成员了,只需加一个attribute:[SerializeReference],原讨论帖见这里:
1. 对于高维数组,将其低维化。即底层采用一维数组来替代。 2. 对于字典,key和value各自存储成List,运行时用字典,序列化时用数组。 3. 对于泛型类,用一个新类将其封装并用 [Serializable] 修饰新类。 4. 对于不带返回值的委托,可以用 UnityEvent 来序列化。注意使用UnityEvent<T>时,要参考3中的方法处理一下才行。带返回值的委托解决方法比较复杂,以后我再说。而UnityEvent序列化反序列化中如何保持对象的生命周期和引用关系也比较有东西可挖,这里有一个网友给出了他做的插件,我没用过
使用道具 举报
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )
GMT+8, 2024-11-26 08:28 , Processed in 0.089757 second(s), 25 queries .
Powered by Discuz! X3.5 Licensed
© 2001-2024 Discuz! Team.