Documentation

Unity Engine


User Manual

Script Reference

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 10 days 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"); }}