Answers:
PlayerPrefs可以跨平台运行,但是不建议将其用于游戏进度保存文件,因为它不安全。作为纯文本文件,玩家可以轻松地打开它并更改内容以作弊,或者使您的游戏行为异常。也不能保证一直在附近。
PlayerPrefs用于非必需的首选项信息,例如控件映射或音乐/ sfx设置-播放器可以自由更改的内容,并且如果他们打算(例如在Windows上)使用系统还原点并且不会丢失,也不会错过他们的一些注册表信息。如果这失去了他们的高分或竞选进度,玩家将很不高兴!
相反,建议将游戏进度保存在您自己的文件中(通常是二进制文件,如果您想使其更难修改的话,可以加密或签名,但请参见下面的Philipp评论)。
您可以使用Application.persistentDataPath来获取每个平台上的可靠保存位置。这通常位于用户数据文件夹中,在上面的示例中这种情况不会消失。
一旦有了保存的路径,就可以使用常规的C#IO方法创建,写入和读取文件。详细信息将根据保存文件的格式和结构而有很大不同,因此,如果遇到麻烦,最好提出一个新问题,详细说明您要做什么以及卡在哪里。
在Unity网站上,有一个视频介绍了两个主要保存选项(PlayerPref和创建自己的保存文件)。该视频可以在以下位置找到:http : //unity3d.com/learn/tutorials/modules/beginner/live-training-archive/persistence-data-saving-loading?playlist=17117
PlayerPrefs是一个K / V商店,旨在为您构建的任何平台“正常工作”。我说只是继续使用它,除非您有令人信服的理由不这样做。
那么最好的方法就是节省服务器端?将所有保存的所需信息转换为json字符串,并将其作为字符串数据存储到自己的mysql服务器中,何时需要加载,连接到服务器并还原它?