У меня есть приложение Direct3D, которое работает с окнами или в полноэкранном режиме с фиксированным разрешением (скажем, 800x600). Чтобы поддерживать широкоэкранные режимы, я отрисовываю в задний буфер 800x600, а затем с помощью Blt рисую последний кадр в части переднего буфера, который обычно больше (скажем, 1280x720), поэтому изображение 800x600 растягивается до 960x720, чтобы сохранить соотношение сторон.
Это прекрасно работает, за исключением некоторых комбинаций видеокарт / ОС / драйверов (nVidia Quadro, DX11, Windows 7), где блиц, по-видимому, делается с использованием точечной выборки, что приводит к неровным краям и, как правило, к неравномерному финальному изображению. *
Есть ли способ избежать этого? Например, заставить Blt использовать линейный фильтр при увеличении?
(Примечание: я знаю, что могу рендерить исходные ресурсы 800x600 в 960x720 вместо растяжения в конце, но у этого есть другие недостатки, поэтому предпочтительным решением является растяжение в конце)