try to force vsyncing for opengl, the desktop resolution detection and vsyncing only...
authorMatthias Braun <matze@braunis.de>
Sat, 14 Apr 2007 21:23:33 +0000 (21:23 +0000)
committerMatthias Braun <matze@braunis.de>
Sat, 14 Apr 2007 21:23:33 +0000 (21:23 +0000)
SVN-Revision: 4977

src/main.cpp

index e616ffe..17bd431 100644 (file)
@@ -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);