【问题标题】:How to save data between levels in UE4?UE4中如何在关卡之间保存数据?
【发布时间】:2020-12-20 03:11:13
【问题描述】:

我正在为我的游戏制作死亡系统。玩家获得 3 条生命,一旦 3 条生命全部耗尽,就会打开死亡屏幕。我遇到了一个问题。我需要拯救剩下的生命,这样我才能在关卡之间访问它。我以前从来没有保存过任何数据,所以我不知道该怎么做。这是我的死亡系统蓝图的图片。
Blueprint

【问题讨论】:

    标签: unreal-engine4 unreal-blueprint


    【解决方案1】:

    有几种方法可以在关卡之间保存数据。

    1。游戏实例

    GameInstance 是一个对象,它从游戏过程的开始到结束都存在。它不会在液位开关上被移除。因此,为了传递一些数据,您可以创建自己的 GameInstance 类,创建需要在关卡之间传递的属性,并在 Project Settings > Maps & Modes > Game Instance 中设置 GameInstance 类。

    在切换关卡之前,只需在游戏实例中设置变量,切换后读取。

    https://ibb.co/DR5zS5M

    https://ibb.co/FYbyzfB

    https://ibb.co/vx7s2SX

    2。使用保存系统

    使用保存系统,您只需保存进度并在切换后加载它。这里的想法是在关卡切换之前使用SaveGameToSlot保存所有数据,之后使用LoadGameFromSlot加载数据。

    虽然这不是一个优雅的解决方案。如果您仅在游戏开始时加载保存并将其与 GameInstance 正确结合,使用保存游戏对象作为进度容器,则效果非常好,这样您就可以保存进度,并使用一个对象将其传递到不同的关卡。

    https://ibb.co/qndzbp6

    SaveGame 蓝图的创建方式与 GameInstance 蓝图相同。查看截图

    【讨论】:

      猜你喜欢
      • 2017-12-02
      • 2022-11-10
      • 2016-01-08
      • 1970-01-01
      • 2017-11-29
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 2016-10-01
      相关资源
      最近更新 更多