Direct2D синхронизация - PullRequest
       30

Direct2D синхронизация

3 голосов
/ 01 ноября 2019

Я только начинаю изучать direct2d. Я написал тестовое приложение, в котором часть для рисования в основном пуста, просто вызов m_pRenderTarget->BeginDraw() с последующим вызовом m_pRenderTarget->EndDraw(). Я сделал некоторые измерения времени между вызовом BeginDraw () и EndDraw () и обнаружил, что это занимает около 16 мс. Я попробовал на Windows 7 64-битной и Windows 10 и получил аналогичные результаты. Я удивлен такой медленной работой. Это ожидаемое время или что-то не так?

Спасибо за помощь, Сэм

1 Ответ

1 голос
/ 02 ноября 2019

Большое спасибо, Дай, за то, что направил меня в правильном направлении. Я обнаружил проблему, это был «существующий» параметр D2D1_HWND_RENDER_TARGET_PROPERTIES, для которого было установлено значение D2D1_PRESENT_OPTIONS_NONE, я изменил его на D2D1_PRESENT_OPTIONS_IMMEDIATELY и получил намного лучшую производительность синхронизации.

...