【Unity】Sceneを重ねて表示する方法

Unity

はじめに

UnityでSceneの上にSceneを重ねるということができます。

今回はSceneを重ねる方法について共有したいと思います。

事前準備

  • シーンを2つ用意します

静的に追加する場合

こちらは2つのシーンが最初から重なった状態でスタートしたい場合の手順です。

まずはベースとなるSceneを開きます。

重ねるSceneをドラッグしベースSceneのHierarcyウィンドウにペーストします

動的に追加する場合

スクリプトで重ねるシーンを動的に追加するという方法になります。

SceneManager.LoadScene("{シーン名}", LoadSceneMode.Additive);

動的に追加したシーンを削除したい場合は、

SceneManager.UnloadScene("{シーン名}");

で削除することができます。

学び

■ActiveScene

複数のSceneを起動している場合は、どれか1つがActiveSceneとする必要があります。

ActiveSceneは奥側に描画されます。

ActiveSceneを切り替えたい場合ですが、

・静的シーン追加の場合

Sceneを右クリックすると下記図のようなメニューが表示されて、Set Active Scene をクリックすると、

ActiveSceneを切り替えすることができます

・動的シーン追加の場合

SceneManager.SetActiveScene(SceneManager.GetSceneByName("{シーン名}"));

とすることでActiveSceneの切り替えが可能となっています。

スクリプトで動的に追加したシーンは勝手にアクティブになることはありませんのでご安心を。

参考にしたサイト

Mtk's Blog: [Unity3D] 二つのscene(シーン)を一つにまとめる方法

【Unity】マルチシーンエディティングを初めて触ってみる - はなちるのマイノート