public static bool UnloadScene(Scene scene)
{
bool flag;
UnloadSceneNameIndexInternal("", scene.buildIndex, true, out flag);
return flag;
}
SceneManager::UnloadScene ( int sceneBuildIndex ) : bool | |
SceneManager::UnloadScene ( string sceneName ) : bool |
/// <summary> /// Unload a scene loaded via AddScene /// </summary> public void UnloadAddedScene(string sceneName) { for (int i = 0; i < mScenesAdded.Count; i++) { if (mScenesAdded[i].name == sceneName) { mScenesAdded.RemoveAt(i); UnitySceneManager.UnloadScene(sceneName); return; } } //check the queue if (mScenesToAdd.Contains(sceneName)) { //reconstruct the queue excluding the sceneName var newSceneQueue = new Queue <string>(); while (mScenesToAdd.Count > 0) { var s = mScenesToAdd.Dequeue(); if (s != sceneName) { newSceneQueue.Enqueue(s); } } mScenesToAdd = newSceneQueue; } }