【Unity】簡単にSceneをボタンで切り替えるには?

Scene切り替え Unity

Sceneの変更手順

ゲーム制作する上で、タイトル画面からメイン画面に切り替えたり、リザルト画面に切り替える技術は必ず必要になります。今回は、そんな時に便利な方法を解説します。

Scene変更前とScene変更後の2つのSceneを用意

AssetsフォルダのScenesフォルダ内に、初めの画面 FirstScene、切り替え後の画面 SecondSceneを作成。

 

Scene変更のためのScriptを作成

Assetsフォルダ内にScriptsフォルダを作成し、その中に

ChangeManager,RetrunManagerを作成する。

*ChangeManagerは、FirstSceneで使用。ReturnManagerは、SecondSceneで使用する。

実際にプログラムコードをScriptに書く

ChangeManagerのコード☟

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;public class ChangeManager : MonoBehaviour
{
[SerializeField] Button newSceneButton;void Start()
{
newSceneButton.onClick.AddListener(OnNewSceneButton);
}public void OnNewSceneButton()
{
//シーンを読み込む
SceneManager.LoadScene("SecondScene");
}
}

ReturnManagerのコード☟

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;public class ReturnManager : MonoBehaviour
{
[SerializeField] Button newSceneButton;void Start()
{
newSceneButton.onClick.AddListener(OnNewSceneButton);
}public void OnNewSceneButton()
{
//シーンを読み込む
SceneManager.LoadScene("FirstScene");
}
}

Scene変更のためにボタンを用意

FirstSceneで右クリックし、UI→Buttonを作成。

SecondSceneも同様にUl→Buttonを作成。

GameObjectを作成し、Scriptを追加する

FirstScene

先ほど作成したCanvas内に空のGameObjectを追加し、名前をChangeManagerに変更。

ChangeManagerにChangeManager.Scriptを追加する。

追加したら画像のように、ChangeManager.ScriptのNewSceneButtonにCanvas内のButtonを追加する。

SecondScene

先ほど作成したCanvas内に空のGameObjectを追加し、名前をReturnManagerに変更。

ReturnManagerにReturnManager.Scriptを追加する。

追加したら画像のように、ReturnManager.ScriptのNewSceneButtonにCanvas内のButtonを追加する。

Add Open ScenesでSceneを追加

最後に左上のFile→Build Settings→Scenes In BuildにFirstSceneとSecondSceneを追加します。

*現在開いてるSceneが追加されるので、FirstSceneを追加したければFirstSceneを開きAdd Open Scenesで追加する。

SecondSceneを追加したければSecondSceneをを開いてAdd Open Scenesで追加する。

追加したら実行しButtonをクリックするとSceneを切り替えることができます。

コメント

タイトルとURLをコピーしました