private void OnPreviousArState() { switch (previousState) { case State.FaceTracking: StartCoroutine(ARSessionState.EnableAR(enabled: false)); ResetTrackerInterfaces(); break; case State.CameraTracking: StartCoroutine(ARSessionState.EnableAR(enabled: false)); ResetTrackerInterfaces(); break; default: ScreenOrientationManager.setOrientation = ScreenOrientationManager.Orientation.Portrait; break; } }
private void UpdateState() { OnPreviousArState(); switch (appState) { case State.StartUp: Screen.sleepTimeout = SleepTimeout.NeverSleep; ScreenOrientationManager.setOrientation = ScreenOrientationManager.Orientation.Portrait; AsyncSceneManager.LoadScene("StartUp"); break; case State.PostStartUp: GetPostStartUpCase(); break; case State.ArCoreSupport: AsyncSceneManager.LoadScene("ArCoreSupport"); break; case State.Tutorial: if (PlayerPrefsHandler.Instance.GetInt("firstTimeUser", -1) == -1) { PlayerPrefsHandler.Instance.SetFirstTimeUserPrefs(); } AsyncSceneManager.LoadScene("Tutorial"); break; case State.RecentTracking: string recentTrackingScene = PlayerPrefsHandler.Instance.GetString("scene", "Camera Tracker"); if (recentTrackingScene == "Camera Tracker") { SetState(State.CameraTracking); } else { SetState(State.FaceTracking); } break; case State.SwitchTrackingType: switch (previousState) { case State.FaceTracking: SetState(State.CameraTracking); break; case State.CameraTracking: SetState(State.FaceTracking); break; } break; case State.FaceTracking: AsyncSceneManager.LoadScene("Face Mesh Tracker"); StartCoroutine(ARSessionState.EnableAR(enabled: true)); ScreenOrientationManager.setOrientation = ScreenOrientationManager.Orientation.Auto; ResetTrackerInterfaces(); break; case State.CameraTracking: AsyncSceneManager.LoadScene("Camera Tracker"); StartCoroutine(ARSessionState.EnableAR(enabled: true)); ScreenOrientationManager.setOrientation = ScreenOrientationManager.Orientation.Auto; ResetTrackerInterfaces(); break; case State.Filebrowser: AsyncSceneManager.LoadScene("Filebrowser"); FileManager.InstantPreview = false; GameObject[] orphans = GameObject.FindGameObjectsWithTag("viewer"); foreach (GameObject go in orphans) { Destroy(go); } break; case State.JsonViewer: AsyncSceneManager.LoadScene("JsonViewer"); break; case State.Settings: AsyncSceneManager.LoadScene("Settings"); break; default: break; } previousState = appState; }