From: Matthias Braun Date: Sat, 14 Apr 2007 21:23:33 +0000 (+0000) Subject: try to force vsyncing for opengl, the desktop resolution detection and vsyncing only... X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=c174dfb2a675b039e915e01549950c7a5b554492;p=supertux.git try to force vsyncing for opengl, the desktop resolution detection and vsyncing only works for SDL >= 1.2.10, so add an #ifdef around the code SVN-Revision: 4977 --- diff --git a/src/main.cpp b/src/main.cpp index e616ffe8a..17bd43185 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -362,6 +362,8 @@ void init_video() if(texture_manager != NULL) texture_manager->save_textures(); +/* unfortunately only newer SDLs have these infos */ +#if SDL_MAJOR_VERSION > 1 || SDL_MINOR_VERSION > 2 || (SDL_MINOR_VERSION == 2 && SDL_PATCHLEVEL >= 10) /* find which resolution the user normally uses */ if(desktop_width == 0) { const SDL_VideoInfo *info = SDL_GetVideoInfo(); @@ -369,6 +371,10 @@ void init_video() desktop_height = info->current_h; } + /* we want vsync for smooth scrolling */ + SDL_GL_SetAttribute(SDL_GL_SWAP_CONTROL, 1); +#endif + SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 5); SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 5);