ovr_Submit and AppDroppedFrameCount unreliable in OpenGL application
I'm working on an application using a custom OpenGL engine. I've recently started tracking the the ovrPerfStatsPerCompositorFrame::AppDroppedFrameCount value, watching it rise constantly. However, in many cases it's rising even though I'm well under budget in terms of time. Looking at application traces I'll often see the dropped frame count rise even though I never see an interval between the end of the last ovr_Submit call and the start of the next of more than 6ms. Further, sometimes even when that interval is that low, the ovr_Submit call will take more than a frame to return. So I'll see "6ms render -> 5 ms ovr_Submit" over and over and then suddenly I'll see "6 ms render -> 15 ms ovr_Submit". This seems to increment the AppDroppedFrameCount even though I was under budget and the only reason I missed the next frame was because ovr_Submit was blocking.
Why is ovr_Submit sometimes for no apparent reason taking longer than a frame to return?
Why is ovr_Submit sometimes for no apparent reason taking longer than a frame to return?
