Это мой основной цикл:
while (!done)
{
oldTimeMS = timeMS;
timeMS = SDL_GetTicks();
frameTimeMS = timeMS - oldTimeMS;
frameTime = ((float)timeMS / 1000.0f)*FPS;
update();
render();
}
, где FPS равен 60. Я могу обновить переменную независимо от частоты кадров, выполнив
var = var+increment*frameTime;
Но как я могу сделать это такчто update () вызывается только через определенный интервал (во времени, а не в кадрах)?Я хочу, чтобы render () вызывался как можно чаще, каждый кадр.Но я хочу, чтобы update () вызывался только через определенный промежуток времени.Как я могу настроить это, используя эти переменные?Заранее спасибо.
Редактировать: Подождите ... Разве я не хотел бы, чтобы update () вызывался как можно дольше, пока не отобразится следующий кадр?Как бы я поступил так?Это была бы лучшая идея, чем моя предыдущая?