Recupero di numeri di memoria grafica
Gli sviluppatori software che creano applicazioni grafiche possono usare le API microsoft DirectX versione 10 a partire da Windows Vista per recuperare il set accurato di numeri di memoria grafica nei computer che eseguono i driver di visualizzazione Windows Display Driver Model (WDDM). La procedura seguente illustra come recuperare i numeri di memoria grafica:
Poiché la nuova creazione di report di memoria grafica è disponibile solo nei computer che eseguono i driver di visualizzazione Windows Display Driver Model (WDDM), un'applicazione deve prima chiamare la funzione seguente per confermare il modello di driver:
HasWDDMDriver() { LPDIRECT3DCREATE9EX pD3D9Create9Ex = NULL; HMODULE hD3D9 = NULL; hD3D9 = LoadLibrary( L"d3d9.dll" ); if ( NULL == hD3D9 ) { return false; } // // Try to create a IDirect3D9Ex interface (also known as a DX9L // interface). // This interface can only be created if the driver is written // according to the Windows Display Driver Model (WDDM). // pD3D9Create9Ex = (LPDIRECT3DCREATE9EX) GetProcAddress ( hD3D9, "Direct3DCreate9Ex" ); return pD3D9Create9Ex != NULL; }
Dopo che l'applicazione determina che il modello di driver visualizzato è WDDM, l'applicazione può usare le nuove API DirectX versione 10 per ottenere i numeri di memoria grafica. L'applicazione ottiene i numeri di memoria grafica dalla struttura di dati DXGI_ADAPTER_DESC seguente, presente in Dxgi.h ed è incluso in DirectX Software Development Kit (SDK).
typedef struct DXGI_ADAPTER_DESC { WCHAR Description[ 128 ]; UINT VendorId; UINT DeviceId; UINT SubSysId; UINT Revision; SIZE_T DedicatedVideoMemory; SIZE_T DedicatedSystemMemory; SIZE_T SharedSystemMemory; LUID AdapterLuid; } DXGI_ADAPTER_DESC;
A causa dell'uso esteso della grafica nei giochi Desktop e DirectX di Windows Vista e versioni successive, il software in esecuzione in Windows Vista e versioni successive dovrebbe essere in grado di determinare con precisione la quantità di memoria grafica disponibile. WDDM gestisce la virtualizzazione della memoria grafica stessa e garantisce anche report accurati di vari aspetti della memoria grafica. Gli sviluppatori di applicazioni e i fornitori di software devono sfruttare le API DirectX versione 10 per recuperare il set accurato di valori di memoria grafica nei computer con driver di visualizzazione di Windows Vista.