Использование DirectX 9 Я хочу захватить то, что на экране, и отобразить уменьшенную версию этого в моей программе.
Чтобы захватить это, я нашел и использую GetFrontBufferData.Однако это работает путем записи на поверхность, определенную в системной памяти (D3DPOOL_SYSTEMMEM).Это приводит к тому, что мне нужно перенести снимок экрана обратно в видеопамять, чтобы я мог затем нарисовать его.
Как вы можете себе представить, этот бесполезный перенос из (видеопамять -> Системная память -> видеопамять) вызывает в моей программе значительный спуск.
Есть ли способ получить сохраненное изображениев передний буфер и положить его на поверхность в видеопамяти?
Этот вопрос является ответом на мой недавний вопрос: Захват и создание скриншота с использованием DirectX