示例#1
0
            public void OnDrawFrame(HeadTransform head, EyeParams leftEye, EyeParams rightEye)
            {
                mStereoRenderer.OnNewFrame(head);
                GLES20.GlEnable(GLES20.GlScissorTest);

                leftEye.getViewport().setGLViewport();
                leftEye.getViewport().setGLScissor();
                mStereoRenderer.OnDrawEye(leftEye.getTransform());

                if (rightEye == null)
                {
                    return;
                }

                rightEye.getViewport().setGLViewport();
                rightEye.getViewport().setGLScissor();
                mStereoRenderer.OnDrawEye(rightEye.getTransform());
            }
示例#2
0
            public RendererHelper(CardboardView view, CardboardView.Renderer renderer)
            {
                mView          = view;
                mRenderer      = renderer;
                mHmd           = new HeadMountedDisplay(mView.mHmd);
                mHeadTransform = new HeadTransform();
                mMonocular     = new EyeParams(EyeParams.Eye.MONOCULAR);
                mLeftEye       = new EyeParams(EyeParams.Eye.LEFT);
                mRightEye      = new EyeParams(EyeParams.Eye.RIGHT);
                UpdateFieldOfView(mLeftEye.getFov(), mRightEye.getFov());
                mView.mDistortionRenderer = new DistortionRenderer();

                mLeftEyeTranslate  = new float[16];
                mRightEyeTranslate = new float[16];

                mVRMode = mView.mVRMode;
                mDistortionCorrectionEnabled = mView.mDistortionCorrectionEnabled;
                mDistortionCorrectionScale   = mView.mDistortionCorrectionScale;
                mZNear = mView.mZNear;
                mZFar  = mView.mZFar;

                mProjectionChanged = true;
            }