Direct3DCreate9-Funktion (d3d9.h)
Erstellen Sie ein IDirect3D9-Objekt, und geben Sie eine Schnittstelle zurück.
Syntax
IDirect3D9 * Direct3DCreate9(
UINT SDKVersion
);
Parameter
SDKVersion
Typ: UINT
Der Wert dieses Parameters sollte D3D_SDK_VERSION sein. Siehe Hinweise.
Rückgabewert
Typ: IDirect3D9*
Bei erfolgreicher Ausführung gibt diese Funktion einen Zeiger auf eine IDirect3D9-Schnittstelle zurück. Andernfalls wird ein NULL-Zeiger zurückgegeben.
Hinweise
Das Direct3D-Objekt ist das erste Direct3D-COM-Objekt, das Ihre grafische Anwendung erstellen muss, und das letzte Objekt, das Ihre Anwendung freigeben muss. Funktionen zum Auflisten und Abrufen von Funktionen eines Geräts sind über das Direct3D-Objekt zugänglich. Dadurch können Anwendungen Geräte auswählen, ohne sie zu erstellen.
Erstellen Sie wie hier gezeigt ein IDirect3D9-Objekt:
LPDIRECT3D9 g_pD3D = NULL;
if( NULL == (g_pD3D = Direct3DCreate9(D3D_SDK_VERSION)))
return E_FAIL;
Die IDirect3D9-Schnittstelle unterstützt die Enumeration aktiver Anzeigeadapter und ermöglicht die Erstellung von IDirect3DDevice9-Objekten . Wenn der Benutzer Adapter dynamisch hinzufügt (entweder durch Hinzufügen von Geräten zum Desktop oder durch Hot-Docking eines Laptops), werden diese Geräte nicht in der Enumeration enthalten. Durch das Erstellen einer neuen IDirect3D9-Schnittstelle werden die neuen Geräte verfügbar gemacht.
D3D_SDK_VERSION wird an diese Funktion übergeben, um sicherzustellen, dass die Headerdateien, für die eine Anwendung kompiliert wird, mit der Version der Laufzeit-DLL's übereinstimmen, die auf dem Computer installiert sind. D3D_SDK_VERSION wird nur in der Runtime geändert, wenn eine Headeränderung (oder eine andere Codeänderung) eine Neugenerierung einer Anwendung erfordern würde. Wenn diese Funktion fehlschlägt, gibt dies an, dass die Headerdateiversion nicht mit der Laufzeit-DLL-Version übereinstimmt.
Ein Beispiel finden Sie unter Erstellen eines Geräts (Direct3D 9).
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d9.h (einschließlich D3D9.h) |
Bibliothek | D3d9.lib |
DLL | D3d9.dll |