Exemple #1
0
    private void Update()
    {
        if (OVRPlugin.shouldQuit)
        {
            Application.Quit();
        }
        if (this.AllowRecenter && OVRPlugin.shouldRecenter)
        {
            OVRManager.display.RecenterPose();
        }
        if (this.trackingOriginType != this._trackingOriginType)
        {
            this.trackingOriginType = this._trackingOriginType;
        }
        OVRManager.tracker.isEnabled       = this.usePositionTracking;
        OVRPlugin.rotation                 = this.useRotationTracking;
        OVRPlugin.useIPDInPositionTracking = this.useIPDInPositionTracking;
        OVRManager.isHmdPresent            = OVRPlugin.hmdPresent;
        if (this.useRecommendedMSAALevel && QualitySettings.antiAliasing != OVRManager.display.recommendedMSAALevel)
        {
            Debug.Log(string.Concat(new object[]
            {
                "The current MSAA level is ",
                QualitySettings.antiAliasing,
                ", but the recommended MSAA level is ",
                OVRManager.display.recommendedMSAALevel,
                ". Switching to the recommended level."
            }));
            QualitySettings.antiAliasing = OVRManager.display.recommendedMSAALevel;
        }
        if (OVRManager._wasHmdPresent && !OVRManager.isHmdPresent)
        {
            try
            {
                if (OVRManager.HMDLost != null)
                {
                    OVRManager.HMDLost();
                }
            }
            catch (Exception arg)
            {
                Debug.LogError("Caught Exception: " + arg);
            }
        }
        if (!OVRManager._wasHmdPresent && OVRManager.isHmdPresent)
        {
            try
            {
                if (OVRManager.HMDAcquired != null)
                {
                    OVRManager.HMDAcquired();
                }
            }
            catch (Exception arg2)
            {
                Debug.LogError("Caught Exception: " + arg2);
            }
        }
        OVRManager._wasHmdPresent = OVRManager.isHmdPresent;
        this.isUserPresent        = OVRPlugin.userPresent;
        if (OVRManager._wasUserPresent && !this.isUserPresent)
        {
            try
            {
                if (OVRManager.HMDUnmounted != null)
                {
                    OVRManager.HMDUnmounted();
                }
            }
            catch (Exception arg3)
            {
                Debug.LogError("Caught Exception: " + arg3);
            }
        }
        if (!OVRManager._wasUserPresent && this.isUserPresent)
        {
            try
            {
                if (OVRManager.HMDMounted != null)
                {
                    OVRManager.HMDMounted();
                }
            }
            catch (Exception arg4)
            {
                Debug.LogError("Caught Exception: " + arg4);
            }
        }
        OVRManager._wasUserPresent = this.isUserPresent;
        OVRManager.hasVrFocus      = OVRPlugin.hasVrFocus;
        if (OVRManager._hadVrFocus && !OVRManager.hasVrFocus)
        {
            try
            {
                if (OVRManager.VrFocusLost != null)
                {
                    OVRManager.VrFocusLost();
                }
            }
            catch (Exception arg5)
            {
                Debug.LogError("Caught Exception: " + arg5);
            }
        }
        if (!OVRManager._hadVrFocus && OVRManager.hasVrFocus)
        {
            try
            {
                if (OVRManager.VrFocusAcquired != null)
                {
                    OVRManager.VrFocusAcquired();
                }
            }
            catch (Exception arg6)
            {
                Debug.LogError("Caught Exception: " + arg6);
            }
        }
        OVRManager._hadVrFocus = OVRManager.hasVrFocus;
        bool hasInputFocus = OVRPlugin.hasInputFocus;

        if (OVRManager._hadInputFocus && !hasInputFocus)
        {
            try
            {
                if (OVRManager.InputFocusLost != null)
                {
                    OVRManager.InputFocusLost();
                }
            }
            catch (Exception arg7)
            {
                Debug.LogError("Caught Exception: " + arg7);
            }
        }
        if (!OVRManager._hadInputFocus && hasInputFocus)
        {
            try
            {
                if (OVRManager.InputFocusAcquired != null)
                {
                    OVRManager.InputFocusAcquired();
                }
            }
            catch (Exception arg8)
            {
                Debug.LogError("Caught Exception: " + arg8);
            }
        }
        OVRManager._hadInputFocus = hasInputFocus;
        if (this.enableAdaptiveResolution)
        {
            if (VRSettings.renderScale < this.maxRenderScale)
            {
                VRSettings.renderScale = this.maxRenderScale;
            }
            else
            {
                this.maxRenderScale = Mathf.Max(this.maxRenderScale, VRSettings.renderScale);
            }
            this.minRenderScale = Mathf.Min(this.minRenderScale, this.maxRenderScale);
            float min = this.minRenderScale / VRSettings.renderScale;
            float num = OVRPlugin.GetEyeRecommendedResolutionScale() / VRSettings.renderScale;
            num = Mathf.Clamp(num, min, 1f);
            VRSettings.renderViewportScale = num;
        }
        string audioOutId = OVRPlugin.audioOutId;

        if (!OVRManager.prevAudioOutIdIsCached)
        {
            OVRManager.prevAudioOutId         = audioOutId;
            OVRManager.prevAudioOutIdIsCached = true;
        }
        else if (audioOutId != OVRManager.prevAudioOutId)
        {
            try
            {
                if (OVRManager.AudioOutChanged != null)
                {
                    OVRManager.AudioOutChanged();
                }
            }
            catch (Exception arg9)
            {
                Debug.LogError("Caught Exception: " + arg9);
            }
            OVRManager.prevAudioOutId = audioOutId;
        }
        string audioInId = OVRPlugin.audioInId;

        if (!OVRManager.prevAudioInIdIsCached)
        {
            OVRManager.prevAudioInId         = audioInId;
            OVRManager.prevAudioInIdIsCached = true;
        }
        else if (audioInId != OVRManager.prevAudioInId)
        {
            try
            {
                if (OVRManager.AudioInChanged != null)
                {
                    OVRManager.AudioInChanged();
                }
            }
            catch (Exception arg10)
            {
                Debug.LogError("Caught Exception: " + arg10);
            }
            OVRManager.prevAudioInId = audioInId;
        }
        if (OVRManager.wasPositionTracked && !OVRManager.tracker.isPositionTracked)
        {
            try
            {
                if (OVRManager.TrackingLost != null)
                {
                    OVRManager.TrackingLost();
                }
            }
            catch (Exception arg11)
            {
                Debug.LogError("Caught Exception: " + arg11);
            }
        }
        if (!OVRManager.wasPositionTracked && OVRManager.tracker.isPositionTracked)
        {
            try
            {
                if (OVRManager.TrackingAcquired != null)
                {
                    OVRManager.TrackingAcquired();
                }
            }
            catch (Exception arg12)
            {
                Debug.LogError("Caught Exception: " + arg12);
            }
        }
        OVRManager.wasPositionTracked = OVRManager.tracker.isPositionTracked;
        OVRManager.display.Update();
        OVRInput.Update();
        if (this.enableMixedReality || OVRManager.prevEnableMixedReality)
        {
            Camera mainCamera = this.FindMainCamera();
            if (Camera.main != null)
            {
                this.suppressDisableMixedRealityBecauseOfNoMainCameraWarning = false;
                if (this.enableMixedReality)
                {
                    OVRMixedReality.Update(base.gameObject, mainCamera, this.compositionMethod, this.useDynamicLighting, this.capturingCameraDevice, this.depthQuality);
                }
                if (OVRManager.prevEnableMixedReality && !this.enableMixedReality)
                {
                    OVRMixedReality.Cleanup();
                }
                OVRManager.prevEnableMixedReality = this.enableMixedReality;
            }
            else if (!this.suppressDisableMixedRealityBecauseOfNoMainCameraWarning)
            {
                Debug.LogWarning("Main Camera is not set, Mixed Reality disabled");
                this.suppressDisableMixedRealityBecauseOfNoMainCameraWarning = true;
            }
        }
    }
Exemple #2
0
    // Token: 0x060038E5 RID: 14565 RVA: 0x00121DA8 File Offset: 0x001201A8
    private void Update()
    {
        this.paused = !OVRPlugin.hasVrFocus;
        if (OVRPlugin.shouldQuit)
        {
            Application.Quit();
        }
        if (OVRPlugin.shouldRecenter)
        {
            OVRManager.display.RecenterPose();
        }
        if (this.trackingOriginType != this._trackingOriginType)
        {
            this.trackingOriginType = this._trackingOriginType;
        }
        OVRManager.tracker.isEnabled       = this.usePositionTracking;
        OVRPlugin.useIPDInPositionTracking = this.useIPDInPositionTracking;
        OVRManager.isHmdPresent            = OVRPlugin.hmdPresent;
        if (this.useRecommendedMSAALevel && QualitySettings.antiAliasing != OVRManager.display.recommendedMSAALevel)
        {
            Debug.Log(string.Concat(new object[]
            {
                "The current MSAA level is ",
                QualitySettings.antiAliasing,
                ", but the recommended MSAA level is ",
                OVRManager.display.recommendedMSAALevel,
                ". Switching to the recommended level."
            }));
            QualitySettings.antiAliasing = OVRManager.display.recommendedMSAALevel;
        }
        if (OVRManager._wasHmdPresent && !OVRManager.isHmdPresent)
        {
            try
            {
                if (OVRManager.HMDLost != null)
                {
                    OVRManager.HMDLost();
                }
            }
            catch (Exception arg)
            {
                Debug.LogError("Caught Exception: " + arg);
            }
        }
        if (!OVRManager._wasHmdPresent && OVRManager.isHmdPresent)
        {
            try
            {
                if (OVRManager.HMDAcquired != null)
                {
                    OVRManager.HMDAcquired();
                }
            }
            catch (Exception arg2)
            {
                Debug.LogError("Caught Exception: " + arg2);
            }
        }
        OVRManager._wasHmdPresent = OVRManager.isHmdPresent;
        this.isUserPresent        = OVRPlugin.userPresent;
        if (OVRManager._wasUserPresent && !this.isUserPresent)
        {
            try
            {
                if (OVRManager.HMDUnmounted != null)
                {
                    OVRManager.HMDUnmounted();
                }
            }
            catch (Exception arg3)
            {
                Debug.LogError("Caught Exception: " + arg3);
            }
        }
        if (!OVRManager._wasUserPresent && this.isUserPresent)
        {
            try
            {
                if (OVRManager.HMDMounted != null)
                {
                    OVRManager.HMDMounted();
                }
            }
            catch (Exception arg4)
            {
                Debug.LogError("Caught Exception: " + arg4);
            }
        }
        OVRManager._wasUserPresent = this.isUserPresent;
        OVRManager.hasVrFocus      = OVRPlugin.hasVrFocus;
        if (OVRManager._hadVrFocus && !OVRManager.hasVrFocus)
        {
            try
            {
                if (OVRManager.VrFocusLost != null)
                {
                    OVRManager.VrFocusLost();
                }
            }
            catch (Exception arg5)
            {
                Debug.LogError("Caught Exception: " + arg5);
            }
        }
        if (!OVRManager._hadVrFocus && OVRManager.hasVrFocus)
        {
            try
            {
                if (OVRManager.VrFocusAcquired != null)
                {
                    OVRManager.VrFocusAcquired();
                }
            }
            catch (Exception arg6)
            {
                Debug.LogError("Caught Exception: " + arg6);
            }
        }
        OVRManager._hadVrFocus = OVRManager.hasVrFocus;
        if (this.enableAdaptiveResolution)
        {
            if (VRSettings.renderScale < this.maxRenderScale)
            {
                VRSettings.renderScale = this.maxRenderScale;
            }
            else
            {
                this.maxRenderScale = Mathf.Max(this.maxRenderScale, VRSettings.renderScale);
            }
            float min = this.minRenderScale / VRSettings.renderScale;
            float num = OVRPlugin.GetEyeRecommendedResolutionScale() / VRSettings.renderScale;
            num = Mathf.Clamp(num, min, 1f);
            VRSettings.renderViewportScale = num;
        }
        string audioOutId = OVRPlugin.audioOutId;

        if (!OVRManager.prevAudioOutIdIsCached)
        {
            OVRManager.prevAudioOutId         = audioOutId;
            OVRManager.prevAudioOutIdIsCached = true;
        }
        else if (audioOutId != OVRManager.prevAudioOutId)
        {
            try
            {
                if (OVRManager.AudioOutChanged != null)
                {
                    OVRManager.AudioOutChanged();
                }
            }
            catch (Exception arg7)
            {
                Debug.LogError("Caught Exception: " + arg7);
            }
            OVRManager.prevAudioOutId = audioOutId;
        }
        string audioInId = OVRPlugin.audioInId;

        if (!OVRManager.prevAudioInIdIsCached)
        {
            OVRManager.prevAudioInId         = audioInId;
            OVRManager.prevAudioInIdIsCached = true;
        }
        else if (audioInId != OVRManager.prevAudioInId)
        {
            try
            {
                if (OVRManager.AudioInChanged != null)
                {
                    OVRManager.AudioInChanged();
                }
            }
            catch (Exception arg8)
            {
                Debug.LogError("Caught Exception: " + arg8);
            }
            OVRManager.prevAudioInId = audioInId;
        }
        if (OVRManager.wasPositionTracked && !OVRManager.tracker.isPositionTracked)
        {
            try
            {
                if (OVRManager.TrackingLost != null)
                {
                    OVRManager.TrackingLost();
                }
            }
            catch (Exception arg9)
            {
                Debug.LogError("Caught Exception: " + arg9);
            }
        }
        if (!OVRManager.wasPositionTracked && OVRManager.tracker.isPositionTracked)
        {
            try
            {
                if (OVRManager.TrackingAcquired != null)
                {
                    OVRManager.TrackingAcquired();
                }
            }
            catch (Exception arg10)
            {
                Debug.LogError("Caught Exception: " + arg10);
            }
        }
        OVRManager.wasPositionTracked = OVRManager.tracker.isPositionTracked;
        OVRManager.display.Update();
        OVRInput.Update();
    }