private void OnRenderImage(RenderTexture src, RenderTexture dest)
        {
            Graphics.Blit(src, dest, blitMaterial);
            if (SteamVR_Camera.doomp)
            {
                SteamVR_Camera.DumpRenderTexture(src, Application.streamingAssetsPath + "/CameraFlip_OnRenderImage_src.png");
            }

            if (SteamVR_Camera.doomp)
            {
                Debug.Log(Time.frameCount.ToString() + "/CameraFlip_OnRenderImage");
                SteamVR_Camera.DumpRenderTexture(dest, Application.streamingAssetsPath + "/CameraFlip_OnRenderImage_dst.png");
            }
        }
        void RenderEye(SteamVR vr, EVREye eye)
        {
            eyePreRenderCallback?.Invoke(eye);

            int i = (int)eye;

            SteamVR_Render.eye = eye;

            if (cameraMask != null)
            {
                cameraMask.Set(vr, eye);
            }

            foreach (var c in cameras)
            {
                c.transform.localPosition = vr.eyes[i].pos;
                c.transform.localRotation = vr.eyes[i].rot;

                // Update position to keep from getting culled
                cameraMask.transform.position = c.transform.position;

                var camera = c.camera;
                camera.targetTexture = SteamVR_Camera.GetSceneTexture(camera.allowHDR);
                int cullingMask = camera.cullingMask;
                if (eye == EVREye.Eye_Left)
                {
                    camera.cullingMask &= ~rightMask;
                    camera.cullingMask |= leftMask;
                }
                else
                {
                    camera.cullingMask &= ~leftMask;
                    camera.cullingMask |= rightMask;
                }
                camera.Render();

                if (SteamVR_Camera.doomp)
                {
                    Debug.Log(Time.frameCount.ToString() + $"/Render{eye}_OnRenderImage_src.png");
                    SteamVR_Camera.DumpRenderTexture(camera.targetTexture, Application.streamingAssetsPath + $"/Render{eye}_OnRenderImage_src.png");
                }
                camera.cullingMask = cullingMask;
            }
            eyePostRenderCallback?.Invoke(eye);
        }