private static SceneData Create(SceneReference sceneReference) { Scene scene = SceneManager.GetSceneByPath(sceneReference); var rootGameObjects = scene.GetRootGameObjects(); ISceneRunner runner = null; for (int i = 0; i < rootGameObjects.Length; i++) { runner = rootGameObjects[i].GetComponent <ISceneRunner>(); if (runner != null) { break; } } return(new SceneData(scene, runner, sceneReference)); }
private SceneData(Scene scene, ISceneRunner runner, SceneReference sceneReference) { m_Scene = scene; m_Runner = runner; m_SceneReference = sceneReference; }