Skip to main content
Participant
April 21, 2015

Huge performance drop when calling ovrhmd_endframe in OpenGL

I am using SDK 0.4.4 with extended desktop mode. I am developing in OpenGL using GLFW and GLEW.

The distortion caps I am using is (0 | ovrDistortionCap_Vignette | ovrDistortionCap_Chromatic | ovrDistortionCap_Overdrive)

Vsync is set to off by glfwSwapInterval(0).

I tried not calling ovrhmd_endframe by rendering directly to the screen without any FBO and called an additional glfwSwapBuffers and I got 68 fps, but there is no distortion.

With calling ovrhmd_endframe I render the scene to FBO first and let ovrhmd_endframe do the distortion and the bufferswap, but I am seeing a huge fps drop (70-->20), which I believe is not normal.

Can someone explain why might be causing this and how I can fix it?