•Persistence - Saving and Loading Data

 

 

Persistence Scene常用于在游戏里处加载各种Manager,还可以用来在Scene之间保存一些数据(Playerpref)。

PlayerPref只能储存Int,float,string三种数据。

playerpref详细介绍

 

新建脚本命名为GameControl,打开并编辑

 

这就是基础的通过DontDestroyOnLoad在场景间保存数据的方式。

新建空对象GameControl,挂上该脚本,并赋值100和1000。

测试,从level1切换到level2,GameControl里的两个数据依然存在。但GameControl是在Level1里创建的,从level1切换到level2数据可以保存,可要是从level2切换到level1就不行了(两个GameControl)。

那我们可以把GameControl写出单例,再把该GameObject保存为Prefab放在level2里。

修改脚本

 

测试,现在可以看到每个场景都只有一个GameControl,且是第一个场景加载的那个GameControl,因为不是instance的都被destroy了(应用见2D Roguelike GameManager 单例)。

 

接下来是以dat形式把两个数据save和load。包括新建类并serializable,把数据转换成binaryFormatter并写入,存入PersistentDataPath等。(见json使用,几乎是一样的原理)具体的流程就不放了,太繁琐。

 

最后,原来是讲的PersistenPath,而不是PersistenScene,好吧。

 

完毕。

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值