има отговор за DirectX11, но DirectX9 е различен.
Първият параметър на IDirect3D9::CreateDevice и IDirect3D9Ex::CreateDevice е UINT Adapter
, трябва да бъде число между 0 и едно по-малко от резултата на IDirect3D::GetAdapterCount
но GetAdapterCount връща 1
, дори моят лаптоп има две видео карти (едната е Intel HD Graphics 3000, другата е AMD HD7400M)
Мога да получа втората видеокарта чрез IDXGIFactory::EnumAdapters в DirectX11, така че как мога да стигна до нея в DirectX 9?
IDIrect3D::GetAdapterIdentifier
, за да разберете кой адаптер във вашата система не изброява и след това проверете тези настройки и драйвери. - person Chuck Walbourn   schedule 25.08.2014DxCapsViewer
в Windows 8.x SDK (включен с VS 2012 или VS 2013) или наследения DirectX SDK, за да видите дали дадено устройство се показва под DXGI устройства, но не се показва под Direct3D 9 устройства. Също така имайте предвид, че концепцията на Direct3D 9 за адаптер е малко по-различна от DXGI: Един физически графичен процесор с два монитора е 2 адаптера в Direct3D 9, но един адаптер с 2 изхода в DXGI. - person Chuck Walbourn   schedule 25.08.2014