Documentation

Unity Engine


Unity Engine


GetSceneAt(int)

Gets the scene at the specified index in the SceneManager's scene list. This includes scenes that are currently loading or unloading.
Read time 1 minuteLast updated a month ago

Definition

public static Scene GetSceneAt(int index)

Parameters

index

Index of the scene to get. Index must be greater than or equal to 0 and less than SceneManager.sceneCount.

Returns

Type

Description

SceneA reference to the Scene at the index specified.

Remarks

Examples

using System.Text;using UnityEditor;using UnityEngine.SceneManagement;public class Example{ // adds a menu item which gives a brief summary of currently open Scenes [MenuItem("SceneExample/Scene Summary")] public static void ListSceneNames() { StringBuilder sb; if (SceneManager.sceneCount > 0) { sb = new StringBuilder(); for (int n = 0; n < SceneManager.sceneCount; ++n) { Scene scene = SceneManager.GetSceneAt(n); sb.Append(scene.name); sb.Append(scene.isLoaded ? " (Loaded, " : " (Not Loaded, "); sb.Append(scene.isDirty ? "Dirty, " : "Clean, "); sb.Append(scene.buildIndex >= 0 ? " in build)\n" : " NOT in build)\n"); } } else { sb = new StringBuilder("No open Scenes."); } EditorUtility.DisplayDialog("Scene Summary", sb.ToString(), "OK"); }}