internal Stage GetStage(Scene scene)
        {
            var inputStageHandle = StageHandle.GetStageHandle(scene);
            var result           = stageHistory.FirstOrDefault(stage => stage.stageHandle == inputStageHandle);

            return(result);
        }
        internal Stage GetStage(Scene scene)
        {
            var inputStageHandle = StageHandle.GetStageHandle(scene);

            foreach (var stage in stageHistory)
            {
                if (stage.stageHandle == inputStageHandle)
                {
                    return(stage);
                }
            }
            return(null);
        }
 internal static void SetSceneToRenderInStage(Scene scene, StageHandle stageHandle)
 {
     if (!stageHandle.IsValid())
     {
         throw new System.ArgumentException("Stage is not valid.", nameof(stageHandle));
     }
     if (stageHandle.isMainStage)
     {
         SetSceneToRenderInMainStageInternal(scene.handle);
     }
     else
     {
         SetSceneToRenderInSameStageAsOtherSceneInternal(scene.handle, stageHandle.customScene.handle);
     }
 }
 public static StageHandle GetStageHandle(Scene scene)
 {
     return(StageHandle.GetStageHandle(scene));
 }
 public static StageHandle GetStageHandle(GameObject gameObject)
 {
     return(StageHandle.GetStageHandle(gameObject.scene));
 }
 public static StageHandle GetMainStageHandle()
 {
     return(StageHandle.GetMainStageHandle());
 }
 public static StageHandle GetCurrentStageHandle()
 {
     return(StageHandle.GetCurrentStageHandle());
 }