Std :: Chrono неправильное время кадра [дублировать]C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Std :: Chrono неправильное время кадра [дублировать]

Сообщение Anonymous »

Я сделал программу с циклом, который должен выполнять 60 раз в секунду, это означает, что время между кадрами должно составлять ~ 16666667ns, но вместо этого время между кадрами по неизвестной причине составляет ~ 30000000 Н. Из-за этого FPS падает до половины и очень нестабильно < /p>

Код: Выделить всё

std::chrono::nanoseconds FrameTime ((std::chrono::nanoseconds)(1000000000/60));
auto Start = std::chrono::steady_clock::now();
loop:
auto FrameS = std::chrono::steady_clock::now();
//drawing code
std::this_thread::sleep_until(Start + FrameTime);
auto FrameE = std::chrono::steady_clock::now();
std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/79689749/stdchrono-wrong-frame-timing[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»