1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-12-18 23:10:26 +00:00

a commandline option to disable vsync

This commit is contained in:
Zeno Rogue 2018-02-20 11:41:55 +01:00
parent 0412ea7b7c
commit 3b19ae2bbd
2 changed files with 11 additions and 0 deletions

View File

@ -1063,10 +1063,16 @@ void saveHighQualityShot(const char *fname, const char *caption, int fade) {
bool setfsize = true;
bool vsync_off;
void do_setfsize() {
vid.fsize = min(vid.yres * fontscale/ 3200, vid.xres * fontscale/ 4800), setfsize = false;
}
void disable_vsync() {
SDL_GL_SetAttribute( SDL_GL_SWAP_CONTROL, 0 );
}
#if CAP_SDL
void setvideomode() {
@ -1085,6 +1091,7 @@ void setvideomode() {
if(vid.usingGL) {
flags = SDL_OPENGL | SDL_HWSURFACE | SDL_GL_DOUBLEBUFFER;
SDL_GL_SetAttribute(SDL_GL_STENCIL_SIZE, 1);
if(vsync_off) disable_vsync();
#if !ISWEB
if(vid.antialias & AA_MULTI) {
SDL_GL_SetAttribute(SDL_GL_MULTISAMPLEBUFFERS, 1);

View File

@ -74,6 +74,10 @@ int arg::readCommon() {
else if(argis("-font")) { PHASE(1); shift(); fontpath = args(); }
else if(argis("-picload")) { PHASE(3); shift(); mapeditor::loadPicFile(args()); }
#endif
else if(argis("-vsync_off")) {
vsync_off = true;
if(curphase == 3) setvideomode();
}
else if(argis("-canvas")) {
PHASE(2);
firstland = specialland = laCanvas;