Esempio n. 1
0
        public void OnFrame(RGBTextureFrame frame)
        {
            Texture2D frametex = frame.texture as Texture2D;
            m_RGBOrigin = frametex;

            m_TargetCamera.Render();

            switch (m_BlendMode)
            {
                case BlendMode.RGBOnly:
                    m_BlendMaterial.SetTexture("_MainTex", frame.texture);
                    Graphics.Blit(frame.texture, BlendTexture, m_BlendMaterial);
                    break;
                case BlendMode.VirtualOnly:
                    m_BlendMaterial.SetTexture("_MainTex", m_TargetCamera.targetTexture);
                    Graphics.Blit(m_TargetCamera.targetTexture, BlendTexture, m_BlendMaterial);
                    break;
                case BlendMode.Blend:
                    m_BlendMaterial.SetTexture("_MainTex", m_TargetCamera.targetTexture);
                    m_BlendMaterial.SetTexture("_BcakGroundTex", frame.texture);
                    Graphics.Blit(m_TargetCamera.targetTexture, BlendTexture, m_BlendMaterial);
                    break;
                case BlendMode.WidescreenBlend:
                    CombineTexture(frametex, m_TargetCamera.targetTexture, m_TempCombineTex, BlendTexture);
                    break;
                default:
                    break;
            }

            // Commit frame                
            m_Encoder.Commit(BlendTexture, frame.timeStamp);
            FrameCount++;
        }
Esempio n. 2
0
        public void OnFrame(RGBTextureFrame frame)
        {
            // Render every camera
            TargetCamera.Render();

            switch (BlendMode)
            {
            case BlendMode.RGBOnly:
                Graphics.Blit(frame.texture, BlendTexture);
                break;

            case BlendMode.VirtualOnly:
                Graphics.Blit(TargetCamera.targetTexture, BlendTexture);
                break;

            case BlendMode.Blend:
                BlendMaterial.SetTexture("_MainTex", TargetCamera.targetTexture);
                BlendMaterial.SetTexture("_BcakGroundTex", frame.texture);
                Graphics.Blit(TargetCamera.targetTexture, BlendTexture, BlendMaterial);
                break;

            case BlendMode.WidescreenBlend:
                // TODO

                break;

            default:
                break;
            }

            // Commit frame
            Encoder.Commit(BlendTexture, frame.timeStamp);
        }
        public EditorFrameProvider()
        {
            m_DefaultTexture       = Resources.Load <Texture2D>("Record/Textures/captureDefault");
            m_DefaultFrame         = new RGBTextureFrame();
            m_DefaultFrame.texture = m_DefaultTexture;

            NRKernalUpdater.Instance.StartCoroutine(UpdateFrame());
        }
Esempio n. 4
0
        private void OnFrame(RGBTextureFrame frame)
        {
            // Update camera pose
            UpdateHeadPoseByTimestamp(frame.timeStamp);

            // Commit a frame
            m_BlendCamera.OnFrame(frame);
        }
        public virtual void OnFrame(RGBTextureFrame frame)
        {
            // update camera pose
            UpdateHeadPoseByTimestamp(frame.timeStamp);

            // commit a frame
            m_Blender.OnFrame(frame);
        }
        private void OnFrame(RGBTextureFrame frame)
        {
            NRDebugger.Log("OnFrame");
            // update camera pose
            UpdateHeadPoseByTimestamp(frame.timeStamp);

            // commit a frame
            m_CameraInput.OnFrame(frame);
        }
        private void OnFrame(RGBTextureFrame frame)
        {
            if (!m_IsStarted)
            {
                return;
            }
            // update camera pose
            UpdateHeadPoseByTimestamp(frame.timeStamp);

            CameraInput.OnFrame(frame);

            PreviewScreen.SetData(CameraInput.BlendTexture, true);
        }
        private void Start()
        {
            if (isDirty)
            {
                return;
            }

#if UNITY_EDITOR
            DefaultTexture    = Resources.Load <Texture2D>("Record/Textures/captureDefault");
            testFrame         = new RGBTextureFrame();
            testFrame.texture = DefaultTexture;
#endif
            this.Init();
        }
 private void UpdateFrame(RGBTextureFrame frame)
 {
     OnUpdate?.Invoke(frame);
     m_IsFrameReady = true;
 }