虚幻引擎游戏保存/加载存档功能

函数名 功能
Does Save Game Exist 检查存档是否存在
Load Game from Slot 加载存档
Save Game to Slot 保存存档
Delete Game in Slot 删除存档

Slot Name 是插槽名字

存档都是通过插槽名字来 读取/加载/检查/删除的

先创建一个SaveGame类 , 这个类里可以存放要保存的数据 , 比如 玩家的位置 / 名字 / 金钱 / 经验

这里我就保存玩家的位置

我们再创建一个控件蓝图 , 画个界面

然后到第三人称蓝图 先搞个BeginPlay 默认加载存档 (可以根据自己 游戏玩法/业务需求 写)

游戏开始时候先检查 有没有存档 , 如果有存档就加载存档 设置玩家存档的位置 , 如果没有存档就创建一个空白对象和位置变量 , 然后保存存档 , 接着加载这个存档

然后回到控件蓝图 , 写三个按钮的控件逻辑

开始游戏就清空插槽存档 , 重新打开一个新关卡

保存存档先检查插槽是否存在 , 如果存在就保存存档

加载存档也是一样 , 检查完直接设置角色存档位置就行了

然后再回到第三人称蓝图

按下Tab键 召唤界面 , 再按下界面就消失

需要注意: save game to slot 节点调用后,如果在没打包之前会在项目文件本地建立SaveGames文件夹下保存.sav。 在项目打包完以后并不会存储在相应的.exe目录下,系统默认存储在C盘。 这就意味着我们的应用的存档再copy到其他电脑的时候会丢失存档

,不过我们可以通过修改c++更改默认存储路径。

这是单机版本的 , 后面如果技术进步了 , 有机会写个网络版的存档系统

相关推荐
catchadmin29 分钟前
使用 PHP 和 Raylib 也可以开发贪吃蛇游戏
开发语言·游戏·php
jtymyxmz31 分钟前
《Unity Shader》7.3 渐变纹理
unity·游戏引擎
wanhengidc1 小时前
云手机的硬件技术
运维·服务器·web安全·游戏·智能手机
AA陈超17 小时前
以 Lyra 的架构为基础,创建一个名为 “Aura“ 的英雄并实现发射火球技能
c++·笔记·学习·ue5·lyra
胡童嘉19 小时前
长沙烈焰鸟网络科技有限公司实习day13日记
功能测试·学习·职场和发展·游戏引擎·cocos2d
y***54881 天前
C++在游戏引擎中的开发
开发语言·c++·游戏引擎
AA陈超1 天前
Lyra项目中的输入系统
c++·笔记·学习·游戏·ue5·lyra
BuHuaX1 天前
Unity_AssetBundle相关
unity·c#·游戏引擎·游戏策划
AA陈超1 天前
ASC学习笔记0027:直接设置属性的基础值,而不会影响当前正在生效的任何修饰符(Modifiers)
c++·笔记·学习·ue5·虚幻引擎
神码编程1 天前
【Unity】 HTFramework框架(六十八)StringEditor字符串复杂编辑器
unity·编辑器·游戏引擎·htframework