Scene
структура в UnityEngine.SceneManagement
Выполнено в:UnityEngine.CoreModule
Описание
Структура данных времени выполнения для сцены.
Этот объект может быть использован для запроса информации о сцене, а также в качестве входа для различных функций манипулирования сценой в SceneManager и EditorSceneManager. Чтобы запросить PhysicsScene назначенного сцене, используйте PhysicsSceneExtensions.GetPhysicsScene метод.
Следующий скрипт отображает некоторую информацию о загруженной сцене, создает и переключает на новую сцену, затем отображает ту же информацию для новой сцены. Чтобы использовать скрипт, прикрепите его к GameObject и запустить проект.
using UnityEngine; using UnityEngine.SceneManagement;
public class SwitchSceneAndQueryInfo : MonoBehaviour { public static void QuerySceneInfo(Scene scene) { Debug.Log("Scene name: " + scene.name); Debug.Log("Scene path: " + scene.path); Debug.Log("Scene build index: " + scene.buildIndex); Debug.Log("Scene is dirty: " + scene.isDirty); Debug.Log("Scene is loaded: " + scene.isLoaded); Debug.Log("Scene root count: " + scene.rootCount); }
public void Start() { // Query information about the currently active scene Scene currentScene = SceneManager.GetActiveScene(); QuerySceneInfo(currentScene);
// Create a new scene and switch to it var newScene = SceneManager.CreateScene("MyNewScene"); SceneManager.SetActiveScene(newScene); SceneManager.UnloadSceneAsync(currentScene);
// Query information about the new scene QuerySceneInfo(newScene); } }
Дополнительные ресурсы: ,SceneAsset,.
Свойства
| Свойство | Описание |
|---|---|
| buildIndex | Возвращает индекс Scene в настройках сборки. |
| handle | Уникальный идентификатор загруженной сцены. |
| isDirty | Возвращает true, если Scene изменен. |
| isLoaded | IsLoaded устанавливается в true после завершения загрузки и включения объектов. |
| isSubScene | Является ли эта сцена субсценой. |
| name | Возвращает имя Scene, которое в данный момент активно в игре или приложении. |
| path | Возвращает относительный путь Scene. Например: "Assets/MyScenes/MyScene.unity". |
| rootCount | Число корневых преобразований этого Scene. |
Открытые методы
| Метод | Описание |
|---|---|
| GetRootGameObjects | Возвращает все корневые объекты игры в Scene. |
| IsValid | Является ли это действительным Scene. Scene может быть недействительным, если, например, вы попытались открыть Scene, который не существует. В этом случае Scene, возвращенный из EditorSceneManager.OpenScene, возвратит False для IsValid. |
Операторы
| Оператор | Описание |
|---|---|
| оператор!= | Возвращает true, если сцены разные. |
| оператор == | Возвращает true, если сцены равны. |