Deltatime Jitter с OpenGL в SDL2?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Deltatime Jitter с OpenGL в SDL2?

Сообщение Anonymous »

При запуске простой демонстрации SDL2/OpenGL с VSYNC в Windows 10 я заметил, что Deltatime между кадрами колеблется на 1–4 мс при 60 Гц. Я ожидаю некоторого дрожания от планирования ОС, но 4 мс кажется достаточно большим, чтобы рискнуть пропустить VBLANK и заикание. SDL_GL_SETSWAPINTERVAL (1) . Я попробовал это, и это немного улучшает ситуацию, но я все еще получаю дрожание до 0,5-2,5 мс. Они присущи композитору Windows, ошибке реализации SDL2 или артефактом OpenGL DIMING? Например, vsynctester.com в Chrome показывает гораздо более низкое джиттер, когда включено «использовать время RAF ARG как время кадра». Я использую Рад для OpenGL, настроенный на Core OpenGL 3.3. Программа вычисляет максимальное абсолютное отклонение кадров в Deltatime от среднего Deltatime более 128 кадров: < /p>
#include
#include
#include
#include
#include

#ifdef _WIN64
#include
#include
#pragma comment(lib, "dwmapi.lib")
#endif

float framedeltamax = 0;
float framedeltamin = 0;
float frametime = 0;
float fps = 0;
float fpstime = 0;
int framecount = 0;

int main(int argc, char** argv)
{

if (SDL_Init(SDL_INIT_VIDEO) < 0) {
std::cerr

Подробнее здесь: https://stackoverflow.com/questions/797 ... gl-in-sdl2
Ответить

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

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

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

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

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