在场景之间处理数据的正确方法是什么?
我正在Unity中开发我的第一个2D游戏,遇到了一个重要问题。 如何处理场景之间的数据? 对此似乎有不同的答案: 有人提到使用PlayerPrefs,而其他人告诉我,这应该用于存储屏幕亮度等其他内容。 有人告诉我,最好的方法是确保每次更改场景时都将所有内容写入保存游戏,并确保在加载新场景时再次从保存游戏获取信息。在我看来,这在性能上是浪费的。我说错了吗 到目前为止,我已经实现了另一种解决方案,即拥有一个在场景之间不被破坏的全局游戏对象,处理场景之间的所有数据。因此,当游戏开始时,我会加载一个开始场景,并在其中加载该对象。在此之后,它将加载第一个真实的游戏场景,通常是一个主菜单。 这是我的实现: using UnityEngine; using UnityEngine.UI; using System.Collections; public class GameController : MonoBehaviour { // Make global public static GameController Instance { get; set; } void Awake () { DontDestroyOnLoad (transform.gameObject); Instance = this; } void Start() { //Load first game scene (probably main menu) …