如何为 Unity Tilemaps 创建保存/加载系统?

问题描述

我正在制作一个通过 Tilemap.SetTile() 程序生成关卡并设置图块的游戏。

我一直在阅读和观看有关统一保存的教程,据我所知,我需要序列化数据,以便将其保存在二进制文件中。但是,我什至不知道 tilemap 中有关 tile 的数据保存在哪里。

我怎样才能制作这个系统 - 我在哪里可以找到有关瓦片地图中存储的瓦片的信息?

Asset Store 上是否有支持 Unity tilemaps 的已经完成的保存系统?

解决方法

正如评论中已经提到的,Unity 中的“序列化”绝对是垃圾 - 完全忘记它。

您所做的就是保存信息,可能是 JSON,只是一个文本文件。

请注意,Unity 内置的 Json 助手非常完美 - 非常易于使用。

这是一个简单而著名的例子... https://stackoverflow.com/a/40097623/294884

(请注意,您实际上不必使用 Json,您可以使用任何简单的文本格式,但 Json 非常简单,您也可以使用它。)

这个站点实际上有几十个QA,有人问“我想在Unity中保存_ _ _,我如何使用序列化?”在每种情况下,答案都只是“Unity 序列化是个笑话,只需另存为文本文件即可。”