• XSS.stack #1 – первый литературный журнал от юзеров форума

VSYNC на GDI

shkolnick1337

(L3) cache
Пользователь
Регистрация
04.05.2020
Сообщения
158
Реакции
106
Депозит
0.16
Есть которые делали игры на GDI?
Вопрос есть в том как сделать что то подобное вертикальной синхронизации, что бы было збс всё. Обычный sleep(100) ну совсем не подходит - глазки плачут. Да в теме новичек по сути, проясните пожалуйста как обновлять нормально в игровом цикле картинку
 
А как? Раньше "простым решением" было создавать для окна какой-то из интерфейсов DirectX и ждать обратного хода луча по WaitForVerticalBlank(), а это вызов блокирующий. Либо городить таймеры + GetScanLine(), как Tearing-free Drawing with GDI. Последний колхоз возможно упростить до опроса GetVerticalBlankStatus() + Sleep(0) с предварительным timeBeginPeriod(1) для лучшей точности. Интересно, изменилось ли ситуация в 2022-м.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Есть которые делали игры на GDI?
Самое ужасное решение. GDI рисует с помощью процессора, медленно и нагружать систему будет сильно.
проясните пожалуйста как обновлять нормально в игровом цикле картинку
Отрисовывать все объекты на WM_PAINT
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх