Beispiel #1
0
    private void Deactivate()
    {
        _lastStep   = null;
        _transition = null;

        if (_camExposureBackup != 0f)
        {
            _camExposureJSON.val = _camExposureBackup;
            _camExposureBackup   = 0f;
        }

        if (_navigationHologridEnabledBackup != null)
        {
            _navigationHologridRenderer.enabled = _navigationHologridEnabledBackup.Value;
            _navigationHologridEnabledBackup    = null;
        }

        if (_navigationRigActive)
        {
            RestorePassenger();
            _navigationRigBackup?.Restore();
            _navigationRigBackup = null;
            _navigationRigActive = false;
        }

        if (_windowCameraActive)
        {
            _windowCameraBackup?.Restore();
            _windowCameraBackup = null;
            _windowCameraActive = false;
        }
    }
Beispiel #2
0
        public static WindowCameraBackup Snapshot(Atom windowCamera, FreeControllerV3 windowCameraController)
        {
            var value = new WindowCameraBackup();

            value._atom             = windowCamera;
            value._controller       = windowCameraController;
            value._previousOn       = windowCamera.GetBoolJSONParam("on").val;
            value._previousRotation = windowCameraController.transform.rotation;
            value._previousPosition = windowCameraController.transform.position;
            return(value);
        }
Beispiel #3
0
    private void ActivateWindowCamera()
    {
        _windowCamera = SuperController.singleton.GetAtomByUid("WindowCamera");
        if (_windowCamera == null)
        {
            SuperController.LogError("There is no 'WindowCamera' atom in the scene, maybe you deleted or renamed it?");
            Deactivate();
            _modeJSON.val = Modes.None;
            return;
        }

        _failedOnce             = false;
        _windowCameraController = _windowCamera.freeControllers[0];
        _windowCameraBackup     = WindowCameraBackup.Snapshot(_windowCamera, _windowCameraController);
        _windowCamera.GetBoolJSONParam("on").val      = true;
        _windowCameraController.containingAtom.hidden = true;
        _windowCameraActive = true;
    }