如何实现存储和加载游戏数据

本文介绍了在Unity中如何利用ScriptableObject实现游戏数据的存储和加载,涉及Binary和Json两种方式。通过Application.persistentDataPath获取游戏目录,并通过创建UI按钮执行SaveGame()和LoadGame()函数进行操作。成功保存后,使用工具如iHex查看保存的二进制文件,证实数据已正确存储。Load方法与保存类似,实现了数据的完整存取。

本文转自Unity Connect博主 Michael Wang

特别针对 ScriptableObject 的特殊性来实现存储和加载

提到存储,目前 Unity 中常用的存储有:XML、Json、PlayerPrefs。

今天我们就用 Binary 二进制和 Json 结合我们之前的背包系统来真是存储我们的游戏数据(背包数据)有关背包系统的内容可以参考另外一篇文章:

https://connect.unity.com/p/kuai-su-zuo-yi-ge-jian-dan-de-bei-bao-xi-tong?app=true

要存储文件就需要得到游戏文件的路径从而创建文件夹和存储的文件

我们使用 Unity 提供的 Application.persistentDataPath 来获得不同平台的游戏目录。

 public void SaveGame()
    {
        Debug.Log(Application.persistentDataPath);//找不到的小伙伴就Debug一下程序路径喽~

        if (!Directory.Exists(Application.persistentDataPath + "/game_SaveData"))//判断是否有存储文件夹
        {
            Directory.CreateDirectory(Application.persistentDataPath + "/game_SaveData");//创建文件夹
        }

    }

接下来我们就来创建一个用来存储数据的文件了:

public void SaveGame()
    {
        Debug.Log(Application.persistentDataPath);//程序路径

        if (!Directory.Exists(Application.persistentDataPath + "/game_SaveData"))//判断是否有存
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值