2022-05-23 01:13:28 -07:00
|
|
|
#include "fps_limiter.h"
|
|
|
|
|
|
|
|
#include <SDL.h>
|
|
|
|
|
2022-05-28 02:48:26 -07:00
|
|
|
FpsLimiter::FpsLimiter(std::size_t fps)
|
2022-05-23 01:13:28 -07:00
|
|
|
: _fps(fps)
|
|
|
|
, _ticks(0)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
void FpsLimiter::mark()
|
|
|
|
{
|
|
|
|
_ticks = SDL_GetTicks();
|
|
|
|
}
|
|
|
|
|
|
|
|
void FpsLimiter::throttle() const
|
|
|
|
{
|
|
|
|
if (1000 / _fps > SDL_GetTicks() - _ticks) {
|
|
|
|
SDL_Delay(1000 / _fps - (SDL_GetTicks() - _ticks));
|
|
|
|
}
|
|
|
|
}
|