Triple buffering

Turning on VSync in our games can improve the look of our graphics because we are guaranteed that tearing will never occur. Unfortunately, if our game frame isn't completed in time for the next refresh, the graphics card waits until the next V-Blank to swap buffers. This is true even if our game misses the refresh by only 1/100th of a second. If our frame is off by this short amount, our fps drops to 30. This is because the content of the back buffer hasn't been swapped yet, so we can't start drawing the next frame.

It would be nice if we could start drawing the next frame while still waiting for the V-Blank signal. To do this, we would need an extra framebuffer to draw to while we are waiting. This is exactly how triple ...

Get Game Development Patterns and Best Practices now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.