added support for (normal and adaptive) vertical sync (vsync)
authorHolger Schemel <info@artsoft.org>
Wed, 26 Sep 2018 18:54:16 +0000 (20:54 +0200)
committerHolger Schemel <info@artsoft.org>
Wed, 26 Sep 2018 18:54:16 +0000 (20:54 +0200)
commit94b9816442fd27ab02bcef6f5d4aaf6740009fc5
treed71d3cfc1222203833dfb7cd25a47bd4ab1e4a7d
parent30eb586d06bc4d1ee7388dced1c20e530292aa93
added support for (normal and adaptive) vertical sync (vsync)

An option was added to the setup menu to enable vsync for redrawing
the screen in synchronization with the vertical retrace, resulting
in ultra-smooth scrolling on systems where it is supported. To make
use of it in R'n'D together with common LCD displays with 60 Hz screen
refresh frequency, a faster game speed than "normal" has to be chosen,
because "normal speed" in R'n'D means 50 frames per second (which is
the original speed of the game on classic CRT displays, which used a
screen refresh frequency of 50 Hz in Europe by default, and which was
also the original game speed of classic Emerald Mine, for example).

If adaptive vsync is chosen, but not supported, a fallback to normal
vsync is done. (See the SDL wiki for SDL_GL_SetSwapInterval() for a
few more details.)
src/files.c
src/libgame/sdl.c
src/libgame/sdl.h
src/libgame/system.h
src/screens.c