From 7d1b8eae219fd43f0a6be77eb484840cf2889ed1 Mon Sep 17 00:00:00 2001 From: kervala Date: Tue, 2 Nov 2010 13:42:25 +0100 Subject: [PATCH] Changed: #1145 Implement VSync under Linux --- .../driver/opengl/driver_opengl_extension.cpp | 4 ++-- .../driver/opengl/driver_opengl_extension.h | 2 +- .../opengl/driver_opengl_extension_def.h | 21 +++++++++++++++++++ 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/code/nel/src/3d/driver/opengl/driver_opengl_extension.cpp b/code/nel/src/3d/driver/opengl/driver_opengl_extension.cpp index 6b9edacf3..f13d33c7b 100644 --- a/code/nel/src/3d/driver/opengl/driver_opengl_extension.cpp +++ b/code/nel/src/3d/driver/opengl/driver_opengl_extension.cpp @@ -445,7 +445,7 @@ PFNWGLGETEXTENSIONSSTRINGARBPROC nwglGetExtensionsStringARB; #elif defined(NL_OS_UNIX) // Swap control extensions -PFNGLXSWAPINTERVALEXTPROC nglXSwapIntervalEXT; +NEL_PFNGLXSWAPINTERVALEXTPROC nglXSwapIntervalEXT; PFNGLXSWAPINTERVALSGIPROC nglXSwapIntervalSGI; @@ -1429,7 +1429,7 @@ static bool setupGLXEXTSwapControl(const char *glext) CHECK_EXT("GLX_EXT_swap_control"); #if defined(NL_OS_UNIX) && !defined(NL_OS_MAC) - CHECK_ADDRESS(PFNGLXSWAPINTERVALEXTPROC, glXSwapIntervalEXT); + CHECK_ADDRESS(NEL_PFNGLXSWAPINTERVALEXTPROC, glXSwapIntervalEXT); #endif return true; diff --git a/code/nel/src/3d/driver/opengl/driver_opengl_extension.h b/code/nel/src/3d/driver/opengl/driver_opengl_extension.h index 43fb3bc08..a899049b6 100644 --- a/code/nel/src/3d/driver/opengl/driver_opengl_extension.h +++ b/code/nel/src/3d/driver/opengl/driver_opengl_extension.h @@ -698,7 +698,7 @@ extern PFNWGLGETEXTENSIONSSTRINGARBPROC nwglGetExtensionsStringARB; // Swap control extensions //=========================== -extern PFNGLXSWAPINTERVALEXTPROC nglXSwapIntervalEXT; +extern NEL_PFNGLXSWAPINTERVALEXTPROC nglXSwapIntervalEXT; extern PFNGLXSWAPINTERVALSGIPROC nglXSwapIntervalSGI; diff --git a/code/nel/src/3d/driver/opengl/driver_opengl_extension_def.h b/code/nel/src/3d/driver/opengl/driver_opengl_extension_def.h index e5ab60c8c..3347f7177 100644 --- a/code/nel/src/3d/driver/opengl/driver_opengl_extension_def.h +++ b/code/nel/src/3d/driver/opengl/driver_opengl_extension_def.h @@ -376,6 +376,27 @@ typedef GLvoid (APIENTRY * NEL_PFNGLGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, G typedef GLvoid (APIENTRY * NEL_PFNGLSAMPLECOVERAGEARBPROC) (GLclampf value, GLboolean invert); #endif +#if defined(NL_OS_MAC) + +// Mac GL extensions + +#elif defined(NL_OS_UNIX) + +// GLX extensions +#ifndef NL_GLX_EXT_swap_control +#define NL_GLX_EXT_swap_control 1 + +#ifndef GLX_EXT_swap_control +#define GLX_SWAP_INTERVAL_EXT 0x20F1 +#define GLX_MAX_SWAP_INTERVAL_EXT 0x20F2 +#endif + +typedef GLint (APIENTRY * NEL_PFNGLXSWAPINTERVALEXTPROC) (Display *dpy, GLXDrawable drawable, GLint interval); + +#endif // NL_GLX_EXT_swap_control + +#endif // NL_OS_MAC + #ifdef __cplusplus } #endif