int gl_GetSwapInterval(State& state){ #ifdef __WGLEW_H__ wglSwapIntervalEXT((int) state.stack->to<int>(1)); state.stack->push<int>(wglGetSwapIntervalEXT()); #else #ifdef __GLXEW_H__ glXSwapIntervalMESA((int) state.stack->to<int>(1)); state.stack->push<int>(glXGetSwapIntervalMESA()); #endif #endif return 1; }
int iface::vsync_interval() const { if (glXGetProcAddress((GLubyte const*)"glXSwapIntervalEXT")) { unsigned int interval; glXQueryDrawable(gui::g_display, window_, GLX_SWAP_INTERVAL_EXT, &interval); return interval; } typedef int(*glXGetSwapIntervalMESA_fun)(); glXGetSwapIntervalMESA_fun glXGetSwapIntervalMESA = (glXGetSwapIntervalMESA_fun)glXGetProcAddress((GLubyte const*)"glXGetSwapIntervalMESA"); if (glXGetSwapIntervalMESA) { return glXGetSwapIntervalMESA(); } return 0; }