2 ms·
My implementation const auto now = SDL_GetPerformanceCounter(); static auto prior = now; static const auto frequency = static_cast<double>(SDL_GetPerform
by mococa 6mo ago
My implementation
const auto now = SDL_GetPerformanceCounter();
static auto prior = now;
static const auto frequency = static_cast<double>(SDL_GetPerformanceFrequency());
const auto delta = std::min(static_cast<float>(static_cast<double>(now - prior) / frequency), 1.f / 30.f);
prior = now;
static auto tick = now;
static auto frames = 0;
++frames;
const auto elapsed = static_cast<double>(now - tick) / frequency;
if (elapsed >= 1.0) [[unlikely]] {
const auto fps = frames / elapsed;
const auto memory = lua_gc(L, LUA_GCCOUNT, 0);
std::println("{:.1f} {}KB", fps, memory);
frames = 0;
tick = now;
}