UE4 | 您所在的位置:网站首页 › ue4怎么重置 › UE4 |
一、再做一些单机游戏时,因为没有服务器,所以数据只能保存在本地,退出游戏后,再次进入依然能读取到上次保存的数据信息。 二、在UE4中想要存某些数据时,需要先创建一个SaveGame为基类的蓝图,创建对应的数据类型变量。 可以保存的数据类型: 1.基本的数据类型 2.容器类型:数组、结构体、Maps 3.复杂数据类型可以使用结构体把要保存的数据提出出来,通过保存结构体,达到保存复杂数据类型的目的。 三、创建结构体 1.右键创建选择Blueprints/结构,并重命名为Things 2.打开结构体蓝图,点击新建变量,创建两个float类型的变量,分别为 Money 、Food。创建完成后保存。 四、创建以SaveGame为基类的蓝图,重命名为TestSaveGame。 创建完成后打开TestSaveGame,创建Things类型的变量命名为Belongs 五、新建UI控件蓝图,命名为TestSave,通过Button及Text,编辑完成有读取、增加、保存、删除,四个按钮的UI 在关卡蓝图中,编辑显示UI到屏幕逻辑 六、实现逻辑:游戏运行后,鼠标显示,并且只能点击UI,在控件蓝图的Construct事件节点编辑
七、游戏数据的读取、保存、增加、删除功能(以结构体TestSaveGame类型为例) 游戏数据的读取(使用ReadButtonOnClick事件): 1.当读取本地磁盘中的数据时,如果数据类型为TestSaveGame并读取到了数据,需要将读取的数据转换类型为TestSaveGame,才可以在 增加、保存时对数据进行更改。 2.如果磁盘中没有对应数据,则需要在读取时创建空白的SaveGame对象设置数据(节点Create Save Game Object), 3.获取到TestSaveGame类型对象后,提升为变量(也可以手动创建变量类型为TestSaveGame的变量)并命名为TestSaveGameObject,方便保存增加时参数调用。 4.数据读取节点:LoadGameFromSlot Slot Name:进行加载的存档槽名称(可以理解为文件名,此示例中Slot Name为:TestSave) UserIndex:在部分平台上掌握用户索引,识别用户进行加载的操作(测试后发现不管设置为几,都是对同一套数据进行操作,暂不知此值是什么作用) 注意:数据读取节点中的 Slot Name为存档槽命名,返回值类型为SaveGame类型,如果加载失败则为空。 游戏数据的更改(点击增加按钮一次,结构体中的Money值加2): 1.先获取到TestSaveGameObject变量中Belongs结构体,使用Break Things节点,将结构体中参数暴露。 2.对money变量进行+2操作。 3.关键: 设置结构体中的变量,需要获取到的Belongs结构体中的成员,使用Set Member Things节点(结构体参数赋值都是用Set Member 结构体名称 节点) 选中创建的 设置Things中的成员 节点,在细节面板中设置参数: 作为引脚代表在节点中出现此参数,也就是对结构体中的参数进行传值,此处勾选Money 4.执行线连接 数据保存 1.使用SaveGametoSlot 节点 对数据进行保存 2.需要使用TestSaveGameObject变量 3.保存的SlotName与读取的SlotName一致(如果不一致,也就意味着保存的数据到了另外一个文件中,如果输入的名称文件并不存在,系统会默认创建一个文件进行数据保存) 4.使用保存按钮的点击OnClick事件节点 数据删除 1.使用DeleteGameInSlot 2.SlotName:要删除的文件名称(删除的是整个文件,并不是文件中某一个单纯的数据) 3.返回值:如果文件实际可删除返回true,文件不存在或者删除失败返回false 检查游戏存档是否以指定的命名存在 Does Save Game Exist节点(可以用来区别删除失败 和 由于文件不存在导致的删除文件失败) 用来判断存档的文件名是否存在,如果存在返回值为true,不存在为false 八、编译,运行 1.读取 2.增加 不保存退出(文件未保存,下次进入后点击读取依然是创建) 3.保存 文件保存,退出后,再次运行, 删除后,数据删除。 九、数据保存目录 此方法保存数据,如果没打包会在项目工程文件目录下与Content同级的Saved文件夹下的SaveGames文件夹下(以创建节点中的NameSlot为名)的SAV文件中 如果是打包的项目工程,系统默认存储在C盘。可以使用C++修改默认存储路径,修改教程链接如下: https://blog.csdn.net/qq_28333537/article/details/80374965 |
CopyRight 2018-2019 实验室设备网 版权所有 |