vlc | branch: master | Laurent Aimar <[email protected]> | Thu Jun 2 21:56:23 2011 +0200| [81072d68c7f84a78a35370af892deed1fe23ce0c] | committer: Laurent Aimar
Used WGL_EXT_swap_control in glwin32. It avoid tearing depending on the default settings. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=81072d68c7f84a78a35370af892deed1fe23ce0c --- modules/video_output/msw/glwin32.c | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/modules/video_output/msw/glwin32.c b/modules/video_output/msw/glwin32.c index fb7ec30..7199094 100644 --- a/modules/video_output/msw/glwin32.c +++ b/modules/video_output/msw/glwin32.c @@ -39,6 +39,7 @@ #endif #include "../opengl.h" +#include <GL/wglew.h> #include "common.h" /***************************************************************************** @@ -108,6 +109,15 @@ static int Open(vlc_object_t *object) sys->hGLRC = wglCreateContext(sys->hGLDC); wglMakeCurrent(sys->hGLDC, sys->hGLRC); + const char *extensions = (const char*)glGetString(GL_EXTENSIONS); +#ifdef WGL_EXT_swap_control + if (HasExtension(extensions, "WGL_EXT_swap_control")) { + PFNWGLSWAPINTERVALEXTPROC SwapIntervalEXT = (PFNWGLSWAPINTERVALEXTPROC)wglGetProcAddress("wglSwapIntervalEXT"); + if (SwapIntervalEXT) + SwapIntervalEXT(1); + } +#endif + /* */ sys->gl.lock = NULL; sys->gl.unlock = NULL; _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
