Beispiel #1
0
        public void DisableSession()
        {
            if (!m_IsInitialized)
            {
                return;
            }
#if !UNITY_EDITOR_OSX
            if (NRVirtualDisplayer.RunInBackground)
            {
                if (VirtualDisplayer != null)
                {
                    VirtualDisplayer.Pause();
                }
                NativeAPI.NativeTracking.Pause();
                if (RenderController != null)
                {
                    RenderController.Pause();
                }
            }
            else
            {
                NRDevice.Instance.ForceKill();
            }
#endif
        }
Beispiel #2
0
        public void DestroySession()
        {
            if (!m_IsInitialized && m_IsDestroyed)
            {
                return;
            }
            m_IsDestroyed = true;
#if !UNITY_EDITOR_OSX
            NativeAPI.NativeHeadTracking.Destroy();
            NativeAPI.NativeTracking.Destroy();
            if (VirtualDisplayer != null)
            {
                VirtualDisplayer.Destory();
            }
            if (RenderController != null)
            {
                RenderController.Destroy();
            }
            NRDevice.Instance.Destroy();
#endif
            if (GameObject.FindObjectOfType <NRKernalUpdater>() != null)
            {
                NRKernalUpdater.Instance.OnUpdate -= NRFrame.OnUpdate;
            }
            m_IsInitialized = false;
        }
Beispiel #3
0
 public void DestroySession()
 {
     if (SessionState == SessionState.Destroyed || SessionState == SessionState.UnInitialized)
     {
         return;
     }
     SessionState = SessionState.Destroyed;
     NRRenderer?.Destroy();
     NativeAPI.NativeHeadTracking.Destroy();
     NativeAPI.NativeTracking.Destroy();
     VirtualDisplayer?.Destory();
     NRDevice.Instance.Destroy();
     FrameCaptureContextFactory.DisposeAllContext();
 }
Beispiel #4
0
        public void ResumeSession()
        {
            if (SessionState != SessionState.Paused)
            {
                return;
            }

            SessionState = SessionState.Running;
            NRDevice.Instance.ResumeHMD();
            NRDevice.Instance.ResumeGlassesController();
            VirtualDisplayer?.Resume();
            NativeAPI.NativeTracking.Resume();
            NRRenderer?.Resume();
        }
Beispiel #5
0
        public void ResumeSession()
        {
            if (SessionState != SessionState.Paused)
            {
                return;
            }

            // Do not put it in other thread...
            VirtualDisplayer?.Resume();
            NativeAPI.NativeTracking.Resume();
            NRRenderer?.Resume();
            NRDevice.Instance.Resume();
            SessionState = SessionState.Running;
        }
 public void DestroySession()
 {
     if (!m_IsInitialized && m_IsDestroyed)
     {
         return;
     }
     m_IsDestroyed = true;
     NativeAPI.NativeHeadTracking.Destroy();
     NativeAPI.NativeTracking.Destroy();
     VirtualDisplayer?.Destory();
     NRRenderer?.Destroy();
     NRDevice.Instance.Destroy();
     FrameCaptureContextFactory.DisposeAllContext();
     m_IsInitialized = false;
 }
 public void ResumeSession()
 {
     if (!m_IsInitialized)
     {
         return;
     }
     NativeAPI.NativeTracking.Resume();
     if (NRRenderer != null)
     {
         NRRenderer.Resume();
     }
     if (VirtualDisplayer != null)
     {
         VirtualDisplayer.Resume();
     }
 }
Beispiel #8
0
        public void ResumeSession()
        {
            if (!m_IsInitialized)
            {
                return;
            }
#if !UNITY_EDITOR_OSX
            NativeAPI.NativeTracking.Resume();
            if (RenderController != null)
            {
                RenderController.Resume();
            }
            if (VirtualDisplayer != null)
            {
                VirtualDisplayer.Resume();
            }
#endif
        }
Beispiel #9
0
        public void DisableSession()
        {
            if (SessionState != SessionState.Running)
            {
                return;
            }
            SessionState = SessionState.Paused;

            if (NRVirtualDisplayer.RunInBackground)
            {
                NRRenderer?.Pause();
                NativeAPI.NativeTracking?.Pause();
                VirtualDisplayer?.Pause();
                NRDevice.Instance.PauseGlassesController();
                NRDevice.Instance.PauseHMD();
            }
            else
            {
                NRDevice.ForceKill();
            }
        }
Beispiel #10
0
        public void DisableSession()
        {
            if (SessionState != SessionState.Running)
            {
                return;
            }

            // Do not put it in other thread...
            if (NRVirtualDisplayer.RunInBackground)
            {
                NRRenderer?.Pause();
                NativeAPI.NativeTracking?.Pause();
                VirtualDisplayer?.Pause();
                NRDevice.Instance.Pause();
                SessionState = SessionState.Paused;
            }
            else
            {
                NRDevice.ForceKill();
            }
        }
 public void DisableSession()
 {
     if (!m_IsInitialized)
     {
         return;
     }
     if (NRVirtualDisplayer.RunInBackground)
     {
         if (VirtualDisplayer != null)
         {
             VirtualDisplayer.Pause();
         }
         NativeAPI.NativeTracking.Pause();
         if (NRRenderer != null)
         {
             NRRenderer.Pause();
         }
     }
     else
     {
         NRDevice.Instance.ForceKill();
     }
 }