DontDestroyOnLoad 场景中的 Unity Destroyed 对象不会在其主场景中重新创建
Unity Destroyed object in DontDestroyOnLoad scene does not recreate in its main scene
我试图在按下 R 时重置游戏,我的播放器是在 Scene1 中创建的,即主场景,然后它进入 DontDestroyOnLoad 场景,以免在场景切换时被破坏,所以我必须用 Destroy .Object 销毁它然后我重置场景,问题是当我销毁播放器然后重置场景时,播放器不会在场景 1 中重新创建自己并告诉我:显示 1 没有相机渲染。 (玩家应该在场景 1 中重新创建自己,因为在游戏开始时他出现在场景 1 中,然后切换到 DonDestroyOnLoad 场景)有什么问题?我该如何解决?
if (Input.GetKeyDown(KeyCode.R)) { Destroy(player); SceneManager.LoadScene(0); }
重新加载场景时一切都会重置,如果您希望某些数据在游戏和关卡中保持不变,您应该为它创建一个 GameManger 对象。只需不要在播放器脚本上调用 dont destroy on load 方法,场景将重置为其初始状态。
我试图在按下 R 时重置游戏,我的播放器是在 Scene1 中创建的,即主场景,然后它进入 DontDestroyOnLoad 场景,以免在场景切换时被破坏,所以我必须用 Destroy .Object 销毁它然后我重置场景,问题是当我销毁播放器然后重置场景时,播放器不会在场景 1 中重新创建自己并告诉我:显示 1 没有相机渲染。 (玩家应该在场景 1 中重新创建自己,因为在游戏开始时他出现在场景 1 中,然后切换到 DonDestroyOnLoad 场景)有什么问题?我该如何解决?
if (Input.GetKeyDown(KeyCode.R)) { Destroy(player); SceneManager.LoadScene(0); }
重新加载场景时一切都会重置,如果您希望某些数据在游戏和关卡中保持不变,您应该为它创建一个 GameManger 对象。只需不要在播放器脚本上调用 dont destroy on load 方法,场景将重置为其初始状态。