[client] more fps limiter fixes

This commit is contained in:
Geoffrey McRae 2020-05-22 18:28:16 +10:00
parent 9b6174793a
commit 60f665a65c
3 changed files with 14 additions and 11 deletions

View file

@ -1 +1 @@
B2-rc1-4-gdedab38b99+1
B2-rc1-5-g9b6174793a+1

View file

@ -175,7 +175,7 @@ static struct Option options[] =
},
{
.module = "win",
.name = "fpsMinimum",
.name = "fpsMin",
.description = "Frame rate minimum (0 = disable - not recommended, -1 = auto detect)",
.shortopt = 'K',
.type = OPTION_TYPE_INT,

View file

@ -191,17 +191,20 @@ static int renderThread(void * unused)
state.resizeDone = true;
}
clock_gettime(CLOCK_REALTIME, &time);
uint64_t nsec = time.tv_nsec + state.frameTime;
if(nsec > 1e9)
if (state.frameTime > 0)
{
time.tv_nsec = nsec - 1e9;
++time.tv_sec;
}
else
time.tv_nsec = nsec;
clock_gettime(CLOCK_REALTIME, &time);
uint64_t nsec = time.tv_nsec + state.frameTime;
if(nsec > 1e9)
{
time.tv_nsec = nsec - 1e9;
++time.tv_sec;
}
else
time.tv_nsec = nsec;
lgWaitEventAbs(e_frame, &time);
lgWaitEventAbs(e_frame, &time);
}
}
state.running = false;