自
Application.LoadLevel(level);
已弃用和新增 SceneManager被提议,我想问的是如何使用它来加载/获取简单的参数,如字符串类型,以及生命周期的哪些功能是最佳实践?(例如 Start , Awake )
SceneManager.LoadScene("resultScene", chosenOptions);
注意简化:除了编写新类之外还有其他选择吗 such as ?
最佳答案
Unity 中的内容与 native 移动应用程序不同。加载时无需传递参数即可在下一个场景中使用它们。只需在第一个场景中的空对象上添加一个脚本 DontDestroyOnLoad
在其中并将您的值保存在此脚本中。由于此对象会贯穿整个游戏生命周期,您可以将您的值存储在此脚本中。并在加载新场景之前更新它们。然后在新场景的开始等中使用它们。
你可以看看callback execution order并选择适合您需要的方法。
Read more关于预加载的场景/对象
关于c# - 如何以编程方式在unity3d中使用scenemanager通过loadlevel加载/获取场景变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40590567/