Уровни функций DirectX 11

Я написал программу, использующую DirectX 11. При создании устройства я использую уровень функций 9.0c (точнее, D3D_FEATURE_LEVEL_9_3).

Мое первоначальное понимание уровней функций заключается в том, что выбор одного из них позволяет программе быть совместимой с видеокартами, которые не поддерживают более поздние версии DirectX.

Насколько мне известно, DirectX 11 может быть не установлен на Windows Vista (по крайней мере, официально), но представьте, как я был удивлен, когда все графические функции работали как часы на Windows Vista.

Вопрос: почему? Как? Является ли DirectX 11 настолько умным, что использует двоичные файлы DirectX 9, когда нет доступных 11? Может это особенность DirectX 10? Может быть, Microsoft включила поддержку Vista для DirectX 11? Что-то в этом есть, я не верю в такие совпадения...

MSDN молчит по этому поводу. По крайней мере, я не нашел подходящей темы.

Любое объяснение этому?


person Spook    schedule 16.02.2012    source источник
comment
Я могу опубликовать ссылку на мою программу, если хотите, чтобы вы могли протестировать ее самостоятельно на Vista или XP.   -  person Spook    schedule 16.02.2012


Ответы (1)


Если вы устанавливаете SP2 или KB971512 на Visa, то она поддерживает DirectX 11: http://www.mydigitallife.info/directx-11-direct3d-for-windows-vista-and-windows-server-2008-free-download/

person Mārtiņš Možeiko    schedule 16.02.2012