Пример #1
0
        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;
            }
        }
Пример #2
0
        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;
        }