Version: 2017.3
public static SceneManagement.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

Scene A reference to the Scene at the index specified.

Description

Get the Scene at index in the SceneManager's list of loaded Scenes.

using UnityEditor;
using UnityEditor.SceneManagement;
using UnityEngine.SceneManagement;
using UnityEngine;
public class Example
{
    // adds a menu item which gives a brief summary of currently open Scenes
    [MenuItem("SceneExample/Scene Summary")]
    public static void ListSceneNames()
    {
        string output = "";
        if (SceneManager.sceneCount > 0)
        {
            for (int n = 0; n < SceneManager.sceneCount; ++n)
            {
                Scene scene = SceneManager.GetSceneAt(n);
                output += scene.name;
                output += scene.isLoaded ? " (Loaded, " : " (Not Loaded, ";
                output += scene.isDirty ? "Dirty, " : "Clean, ";
                output += scene.buildIndex >= 0 ? " in build)\n" : " NOT in build)\n";
            }
        }
        else
        {
            output = "No open Scenes.";
        }
        EditorUtility.DisplayDialog("Scene Summary", output, "Ok");
    }
}
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961