Добрый вечер,
У меня есть несколько 32-битных изображений в буферах памяти, которые я хочу быстро "перетянуть" в контекст устройства.Скорость - проблема здесь, потому что буфер будет постоянно манипулироваться и его необходимо постоянно подключать к DC.
Глубина цвета буфера составляет 32 бита, поэтому он уже находится в ожидаемом DIB форматеSetDIBits ().Однако это довольно громоздко, поскольку цель битовой карты SetDIBits () уже не может быть выбрана в DC до операции.Поэтому мне нужно будет постоянно менять битовую карту контроллера домена, вызывать SetDIBits (), снова менять битовую карту в контроллере домена, а затем подключать контроллер домена к контроллеру окна.На мой взгляд, это просто большая нагрузка на ЦП и слишком большая разветвленность в Windows API;слишком много для оптимальной производительности.
Мне было бы интересно использовать DirectX, если бы он не заставлял меня использовать контексты устройств для 2D-операций или загружать текстуры в видеопамять перед их отображением, потому что содержимоеизображение постоянно меняется.
Мой вопрос прост (несмотря на длительную рецензию).Каков был бы самый быстрый способ для меня переместить изображение из буфера пикселей в памяти на экран?Прямой доступ к пиксельному буферу контроллера домена был бы полезен, но я знаю, что этого не произойдет.
Спасибо за чтение моей длинной записи.