Trouble with vsync using glut in OpenGL
I'm struggling desperately to get Vsync to work in my OpenGL application. Here's the vital stats: I'm using Windows, coding in C++ OpenGL and I'm using FreeGLUT for my OpenGL context (double buffering). I'm aware that for the swap buffer to wait for vertical sync in Windows you are required to call wglSwapIntervalEXT(). My code does call this (as you'll see below), yet I am still getting vertical tearing. The only way I've managed to stop it is by calling glFinish() which of course has a significant performance penalty associated with it. The relevant parts of my main() function look like this