Ejemplo n.º 1
0
 void OnStoppedPhotoMode(NRPhotoCapture.PhotoCaptureResult result)
 {
     if (m_PhotoCaptureObject == null)
     {
         Debug.LogError("The NRPhotoCapture has not been created.");
         return;
     }
     // Shutdown our photo capture resource
     m_PhotoCaptureObject.Dispose();
     m_PhotoCaptureObject = null;
 }
        void OnCapturedPhotoToMemory(NRPhotoCapture.PhotoCaptureResult result, PhotoCaptureFrame photoCaptureFrame)
        {
            // Copy the raw image data into our target texture
            photoCaptureFrame.UploadImageDataToTexture(targetTexture);

            // Create a gameobject that we can apply our texture to
            GameObject quad         = GameObject.CreatePrimitive(PrimitiveType.Quad);
            Renderer   quadRenderer = quad.GetComponent <Renderer>() as Renderer;

            quadRenderer.material = new Material(Resources.Load <Shader>("Record/Shaders/CaptureScreen"));

            var headTran = NRSessionManager.Instance.NRHMDPoseTracker.centerCamera.transform;

            quad.name = "picture";
            quad.transform.localPosition = headTran.position + headTran.forward * 3f;
            quad.transform.forward       = headTran.forward;
            quad.transform.localScale    = new Vector3(1.6f, 0.9f, 0);
            quadRenderer.material.SetTexture("_MainTex", targetTexture);
        }