如何使游戏角色移动到另一个场景



作为标题,我不知道如何让游戏角色穿过game_scene_1到game_scene _2。我触发,可以更改为game_scene_2,但游戏角色仍在game_scene _1上。如何修复?请帮帮我。

虽然您可以像RadiantMin3所描述的那样使用DontDestroyOnLoad,但实际上您可以在场景之间移动对象!https://docs.unity3d.com/ScriptReference/SceneManagement.SceneManager.MoveGameObjectToScene.html

只需确保额外加载game_scene_2,然后在移动玩家后卸载game_scene _1。示例:

SceneManager.LoadScene(game_scene_2, LoadSceneMode.Additive);
SceneManager.MoveGameObjectToScene(player.gameObject, game_scene_2);
SceneManager.UnloadScene(game_scene_1);

这将加载游戏场景2而不卸载游戏场景1,在加载两个场景时移动玩家,然后卸载游戏场景。

您可以将播放器保存为预制件,并在新场景中使用Start方法生成它。

或者,如果你有一个链接到玩家的gameobject,请使用这个:

DontDestroyOnLoad(PLAYER_GO);

如果你没有链接,你可以把它放在播放器的Start方法上

DontDestroyOnLoad(this.gameObject);

最新更新