Unityで元のシーンに戻るには
Unityでは、SceneManager.LoadScene()メソッドを使って元のシーンへ遷移できます。まず、新しいシーンへ遷移するスクリプトに、以下のコードで元のシーン名を保存します。
using UnityEngine.SceneManagement;
public class SceneController : MonoBehaviour
{
public string originalSceneName;
private void Awake()
{
originalSceneName = SceneManager.GetActiveScene().name;
}
// 跳转到新场景
public void LoadNewScene(string sceneName)
{
SceneManager.LoadScene(sceneName);
}
// 跳转回原来的场景
public void LoadOriginalScene()
{
SceneManager.LoadScene(originalSceneName);
}
}
シーン遷移元となるボタン等をオブジェクト化し、SceneControllerスクリプトを付与します。LoadOriginalScene()メソッドをオブジェクト上で呼び出すことで元のシーンへの遷移が実現します。
新しいシーンのスクリプトに遷移する際は、遷移前に元のシーン名を保持する必要があります。 Awake()メソッドでSceneManager.GetActiveScene().nameを使用して現在のシーン名を取得し、originalSceneName変数に保存できます。