Unityでシーン(Scene)を切り替える方法/SceneManager.LoadSceneの使い方

camera IT

スクリプトを使ってシーンを切り替える方法です。複数のシーンがないと切り替えが行えないので、まだ新しいシーンを作っていない方はシーンの新規作成をしてからお読みください。

スポンサーリンク

成果物

scne
オブジェクトをクリックすると、シーンを切り替えるようにしてみます。

SceneManager.LoadSceneの使い方

シーンを切り替える
SceneManager.LoadScene(シーン名);
※名前空間でusing UnityEngine.SceneManagement;の宣言が必須
loadscene1
まずは複数のシーンを用意しておきます。
loadscene2
シーンを切り替えるには、名前空間でusing UnityEngine.SceneManagement;と宣言をしておく必要があります。
loadscene12
OnMouseDownメソッドでマウスクリックでイベントが起きるようにしてSceneManager.LoadScene(“Scene2”);のように遷移先を指定しておき、
loadscene4
スクリプトをオブジェクトにアタッチすれば完成です。
loadscene10
ゲームを実行してオブジェクトをクリックすれば、
loadscene11
シーンが切り替わります。

シーン名を変数で指定

loadscene3
もしシーンを変数で指定したい場合は、public String 変数名を宣言しておき、
loadscene5
アタッチしたオブジェクトにできた変数欄に、
loadscene6
遷移したいシーン名をコピペすればOKです。
loadscene7
この場合は、SceneManager.LoadScene(変数名);のような記述となります。

反応しない場合

loadscene8
名前空間での宣言をしていないか、シーンをビルド設定に追加していない可能性が考えられます。
ファイルビルド設定に入り、
loadscene9
ゲーム内で使用するシーンを「ビルドに含まれるシーン」に追加します。
やりたいことから逆引きするUNITYの使い方まとめ
Unityをやりたいことから学習していけるよう、機能・用途別にまとめたページです。C#の命令別の逆引きは現時点で作っていません。2019の時期に書き始めているので、それより前のバージョンについては言及しません。

コメント