跳转到内容

Godot 游戏引擎指南 / 保存与加载

来自维基教科书,开放世界开放书籍

大多数游戏引擎允许你保存文件。Godot 也不例外。

有五种保存文件的方法,每种方法至少有一种加载方法。

这些可以使用 GDScript 的内置 load() 函数加载。有关更多信息,请参见 创建资源

优点
  • Godot 内置加载和保存
缺点
  • 难以调试

通常用于通过互联网发送数据。它易于阅读和修改,因此请考虑压缩或加密你的保存文件以防止作弊。这在多人游戏中尤为重要。或者,将玩家数据保存在云中。这将需要设置一个 服务器

优点
  • 易于调试
  • 快速保存/加载时间
缺点
  • JSON 未定义 int,只有数字。所有数字都作为 float 输出。

可以使用 File 对象打开和解析文件。

优点
  • 易于调试
  • 易于 加密 以防止作弊者
缺点
  • 可能难以解析

Xml 是一种简单的文件格式,但难以解析。请参见 XMLParser

优点
  • 广泛支持
缺点
  • 难以解析

这可以通过调用 Node.pack() 来完成,它将自身和任何将 owner 设置为自身的子节点转换为可以保存为 ResourceSaver.save() 并使用 load() 加载的节点。

优点
  • 内置于 Godot,可能相当快
缺点
  • 保存所有内容,选择要保存的内容很困难且耗时
  • 难以调试

你可以通过将节点的 owner 设置为 null 来排除节点。要包含属性,请将属性导出。如果节点的 owner 属性设置为调用 pack() 的节点以外的任何内容,则不会保存它。请注意,此属性必须设置为通过脚本添加到场景中的任何内容,因为它们从一开始就没有所有者。

  1. 在 Godot 4.0 之前,文件大小不能超过 24Gib(千兆字节)。
  2. 一个有用的文本文件格式是“csv”(逗号分隔值),其中每个值用逗号 (",") 分隔。使用 String.get_csv() 来分隔它们。
  • 非常大的文件可能需要将近一分钟才能加载。考虑将保存文件拆分为多个文件,并且仅在需要时加载每个文件。



Godot 游戏引擎指南

入门 [编辑]
安装
什么是节点?
编程
资源和导入
信号和方法
你的第一个游戏
使它起作用
调试
输入
物理
保存与加载
多人游戏
让它看起来好
UI 皮肤
动画
高级帮助
服务器(单例)
平台特定
优化
加密
导出
插件
其他
有用的链接
作者和贡献者
印刷版


<-- 上一个 返回顶部 下一个 -->

华夏公益教科书