IDXGIAdapter::GetDesc メソッド (dxgi.h)
アダプター (またはビデオ カード) の DXGI 1.0 の説明を取得します。
構文
HRESULT GetDesc(
[out] DXGI_ADAPTER_DESC *pDesc
);
パラメーター
[out] pDesc
種類: DXGI_ADAPTER_DESC*
アダプターを記述 するDXGI_ADAPTER_DESC 構造体へのポインター。 このパラメーターは NULL にすることはできません。 機能レベル 9 のグラフィックス ハードウェアでは、GetDesc は、DXGI_ADAPTER_DESC の VendorId、DeviceId、SubSysId、Revision メンバーの場合は 0 を返し、Description メンバーの説明文字列には "Software Adapter" を返します。
戻り値
型: HRESULT
成功した場合はS_OKを返します。それ以外の場合は、 pDesc パラメーターが NULL の場合、E_INVALIDARGを返します。
注釈
グラフィックス アプリでは、DXGI API を使用して、Windows ディスプレイ ドライバー モデル (WDDM) ドライバーを持つシステム上のグラフィックス メモリ値の正確なセットを取得できます。 重要な手順を次に示します。
-
グラフィックス ドライバー モデルの決定 —DXGI は WDDM ドライバーを搭載したシステムでのみ使用できるため、アプリは最初に次の API を使用してドライバー モデルを確認する必要があります。
HasWDDMDriver() { LPDIRECT3DCREATE9EX pD3D9Create9Ex = NULL; HMODULE hD3D9 = NULL; hD3D9 = LoadLibrary( L"d3d9.dll" ); if ( NULL == hD3D9 ) { return false; } // /* Try to create IDirect3D9Ex interface (also known as a DX9L interface). This interface can only be created if the driver is a WDDM driver. */ // pD3D9Create9Ex = (LPDIRECT3DCREATE9EX) GetProcAddress( hD3D9, "Direct3DCreate9Ex" ); return pD3D9Create9Ex != NULL; }
-
グラフィックス メモリ値の取得。- アプリがドライバー モデルを WDDM と判断した後、アプリは Direct3D 10 以降の API と DXGI を使用してグラフィックス メモリの量を取得できます。
Direct3D デバイスを作成した後、このコードを使用して、使用可能なグラフィックス メモリの量を含む DXGI_ADAPTER_DESC 構造を取得します。
IDXGIDevice * pDXGIDevice; hr = g_pd3dDevice->QueryInterface(__uuidof(IDXGIDevice), (void **)&pDXGIDevice); IDXGIAdapter * pDXGIAdapter; pDXGIDevice->GetAdapter(&pDXGIAdapter); DXGI_ADAPTER_DESC adapterDesc; pDXGIAdapter->GetDesc(&adapterDesc);
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | dxgi.h |
Library | DXGI.lib |