I've finally figured this out. If anyone else is having trouble with this, verify that the mouse cursor is completely hidden when your application has exclusive fullscreen in the direct present mode. I had very uneven frame pacing with the direct present mode with the cursor onscreen which completely went away after calling hide on the cursor.
I can only speculate what's going on under the hood here. Perhaps it's that on each draw call the system has to check in with the cursor, but with your app having fullscreen priority, the system responds more slowly to requests to render the cursor, causing it to block for a long period before it can actually render the completed drawable for the display?
Topic:
Graphics & Games
SubTopic:
General
Tags: