Unity3d 编译生成中的序列化目的

Unity3d 编译生成中的序列化目的,unity3d,Unity3d,所以我在阅读Odin的文档,从中我注意到有人提到编译版本中需要序列化系统。顺便说一句,序列化用于场景保存和检查器之类的东西——在游戏准备编译版本中不需要这些 那么,在编译版本中序列化系统的目的是什么?通常意味着将序列化的某些值存储到一个文件中,例如Unity场景或任何资产,如预置或脚本对象。基本上,您可以在文本编辑器中打开它们,并查看它们的序列化版本 通常,所有序列化的内容都意味着您可以在Inspector中进行配置,并且在运行时/在构建中,将使用其字段的序列化存储值(而不是默认值)生成实例 基

所以我在阅读Odin的文档,从中我注意到有人提到编译版本中需要序列化系统。顺便说一句,序列化用于场景保存和检查器之类的东西——在游戏准备编译版本中不需要这些

那么,在编译版本中序列化系统的目的是什么?

通常意味着将序列化的某些值存储到一个文件中,例如Unity场景或任何资产,如预置或脚本对象。基本上,您可以在文本编辑器中打开它们,并查看它们的序列化版本

通常,所有序列化的内容都意味着您可以在Inspector中进行配置,并且在运行时/在构建中,将使用其字段的序列化存储值(而不是默认值)生成实例

基本上,例如任何序列化字段,如

[SerializeField] private float value;

这样工作,当然,在运行时和编译的构建中至少需要某种类型的反序列化系统

此外,还可以在运行时/构建中使用序列化和反序列化,例如,将类从和转换为其他格式,或加载和创建资产或

因此,在构建中使用反序列化系统是完全有意义的,并且不太可能找到将序列化与反序列化隔离的系统

特定于:它使用来序列化所有内容。这甚至允许您将场景引用存储在预设中,以便实例化后的预设可以从场景中恢复相应的引用

public string someString;