PlayerPrefs v. XML 用于在 Unity3D 中保存数据的文件?

PlayerPrefs v. XML File for Saving Data in Unity3D?

我到处搜索 Google 和 YouTube,但找不到我的问题的明确答案。

我应该使用 PlayerPrefs 还是 XML 文件来保存游戏版本 1 中的所有数据?还是您喜欢他们的任何其他保存格式?

我的游戏没有太多数据可以保存到其中,但也不是很少。我将在我的游戏中保存的东西是:选项菜单(打开或关闭声音 FX,打开或关闭游戏音乐,打开或关闭 10 秒故事动画),你在我的游戏中走的距离的分数(大约 10 个分数) ,有点像广告牌)和一个非常简单的商店,你可以在游戏中达到一定距离后解锁另外两个角色。他们现在不多,但我将在我的游戏中发布更新,它会继续增长和扩展,所以我希望可以在最好的情况下扩展储蓄选项。我尽力解释了我的独特情况,如果您需要更多信息,请告诉我,我会添加。谢谢! :)

I searched all around Google and YouTube and I could not find a definite answer to my question.

那是因为他们两个都会完成工作。使用哪一个并不重要。它们都可以保存您的游戏数据。

现在,我个人认为,出于可移植性原因,您应该使用 XML

当您使用 PlayerPrefs 保存游戏数据时,您将在该平台上使用它。例如,PlayerPrefs 在 Android 上保存为 .xml,在 iOS 和 Mac 上保存为 .xml OS,.dat 在 Windows App Store 上,并在 Windows 上作为 HKCU\Software\[company name]\[product name] key 上的注册表项。这些不可互换。

  • 假设您想让玩家将所有玩家设置从一个平台转移到另一个平台,那将是一个问题。通过使用 xml,您的游戏将能够在您想要的任何平台上使用它。因此玩家可以从他们的 Android phone 中获取他们的设置并在他们的 PC 或 Mac 上毫无问题地使用它。

  • 当您想将 game engineUnity 更改为另一个 UDK 时,您将很难使用播放器的旧数据。我看到一个关于将玩家数据从 Unity 传输到另一个游戏引擎的问题。如果这个人用的是xml,那就完全没有问题了。如果您的玩家因游戏引擎更改而丢失数据,您将收到负面反馈。如果您认为您永远不必更改游戏引擎,请记住您不是 Unity Technologies SF 的创始人或首席执行官。他们做出自己的决定,任何其他竞争对手都可以随时购买它们并关闭它们。这事儿常常发生。如果您真的关心 PlayerPrefsXml,请坚持使用 xml