Как получить версию драйвера адаптера в DirectX12? - PullRequest
0 голосов
/ 08 июля 2019

В DirectX9 я могу вызвать IDirect3D9::GetAdapterIdentifier метод для получения D3DADAPTER_IDENTIFIER9 с версией драйвера адаптера DriverVersion.

Есть ли что-то похожее в DirectX12 для получения версии драйвера?

Ответы [ 2 ]

0 голосов
/ 10 июля 2019

Вы можете получить каждую версию драйвера адаптера DXGI из реестра,

ключ HKEY_LOCAL_MACHINE \ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Microsoft \ DirectX

(с соответствующим DeviceId из DXGI_ADAPTER_DESC )

Например, я получаю:

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ DirectX {53ED9FF6-8883-11E8-B1FF-C0C7A6E97177}

DeviceId = 0x402

Описание = Intel (R) HD Graphics

DriverVersion = 0x140013000f12e3

затем:

LARGE_INTEGER nDriverVersion;
nDriverVersion.QuadPart = 0x140013000f12e3; 
WORD nProduct = HIWORD(nDriverVersion.HighPart);
WORD nVersion = LOWORD(nDriverVersion.HighPart);
WORD nSubVersion = HIWORD(nDriverVersion.LowPart);
WORD nBuild = LOWORD(nDriverVersion.LowPart);

=> 20.19.15 Build 4835, которая является допустимой версией ( Графический драйвер Intel HD 20.19.15.4835, 64-разрядный )

0 голосов
/ 08 июля 2019

Используйте метод DXGI IDXGIAdapter::GetDesc.

Это то же самое, что и для Direct3D 10 и 11, которые также используют DXGI.

Обратите внимание, что существует несколько версийDXGI_ADAPTER_DESC структура, последняя в DXGI 1.6.

...