シーン全般
※SceneManagerを使用する場合には、スクリプトの一番上に 『using UnityEngine.SceneManagement;』を追加してください。
※関数の橙文字は目的に合わせて随時変更してください。
※ は、その変数が「読み込み専用」であることを表しています。
もくじ
1.シーン情報の取得
2.シーンの取得
3.シーンの追加と変更
4.シーンの削除
5.オブジェクト移動
6.Sceneクラス
シーン情報の取得
シーン情報取得に関する変数
目的 | 関数 | 戻り値 |
---|---|---|
現在のシーン数取得 | SceneManager.sceneCount; | int |
Build Settingsの シーン数取得 |
SceneManager.sceneCountInBuildSettings; | int |
シーンの取得
シーン取得に関する関数
目的 | 関数 | 戻り値 |
---|---|---|
現在のシーンを取得 | SceneManager.GetActiveScene(); | Scene |
インデックス指定で シーンを取得 |
SceneManager.GetSceneAt(0); | Scene |
ビルドインデックス指定で シーンを取得 |
SceneManager.GetSceneByBuildIndex(0); | Scene |
名前指定でシーンを取得 | SceneManager.GetSceneByName(“name“); | Scene |
シーンの追加と変更
シーンの追加と変更に関する関数
目的 | 関数 | 戻り値 |
---|---|---|
シーンの切り替え | SceneManager.LoadScene(“name“,LoadSceneMode.Single); or SceneManager.LoadScene(buildIndex,LoadSceneMode.Single); |
– |
シーンの追加 | SceneManager.LoadScene(“name“,LoadSceneMode.Additive); or SceneManager.LoadScene(buildIndex,LoadSceneMode.Additive); |
– |
シーンの切り替え (非同期) |
SceneManager.LoadSceneAsync(“name“,LoadSceneMode.Single); or SceneManager.LoadSceneAsync(buildIndex,LoadSceneMode.Single); |
– |
シーンの追加 (非同期) |
SceneManager.LoadSceneAsync(“name“,LoadSceneMode.Additive); or SceneManager.LoadSceneAsync(buildIndex,LoadSceneMode.Additive); |
– |
新しい空シーンの追加 | SceneManager.CreateScene(“name“); | – |
シーンの変更 | SceneManager.SetActiveScene(scene); | – |
シーンの削除
シーンの削除に関する関数
目的 | 関数 | 戻り値 |
---|---|---|
シーンの削除 | SceneManager.UnloadSceneAsync(“name“); or SceneManager.UnloadSceneAsync(buildIndex); |
– |
オブジェクト移動
シーン間のオブジェクトの移動に関する関数
目的 | 関数 | 戻り値 |
---|---|---|
シーン間の オブジェクト移動 |
SceneManager.MoveGameObjectToScene(object, scene); | – |
Sceneクラス
Sceneクラスに関する変数・関数
目的 | 関数 | 戻り値 |
---|---|---|
Build Settingsにおける シーンインデックス取得 |
scene.buildIndex; | int |
シーン名取得 | scene.name; | string |
シーンの相対パス取得 | scene.path; | string |
有効なシーンかどうか | scene.IsValid(); | bool |
シーンが読み込まれたか | scene.isLoaded; | bool |