Freigeben über


D3DXLoadMeshFromXResource-Funktion

Lädt ein Gitter aus einer Ressource.

Syntax

HRESULT D3DXLoadMeshFromXResource(
  _In_  HMODULE           Module,
  _In_  LPCSTR            Name,
  _In_  LPCSTR            Type,
  _In_  DWORD             Options,
  _In_  LPDIRECT3DDEVICE9 pD3DDevice,
  _Out_ LPD3DXBUFFER      *ppAdjacency,
  _Out_ LPD3DXBUFFER      *ppMaterials,
  _Out_ LPD3DXBUFFER      *ppEffectInstances,
  _Out_ DWORD             *pNumMaterials,
  _Out_ LPD3DXMESH        *ppMesh
);

Parameter

Modul [in]

Typ: HMODULE

Verarbeiten Sie das Modul, in dem sich die Ressource befindet, oder NULL für das Modul, das dem Image zugeordnet ist, das das Betriebssystem zum Erstellen des aktuellen Prozesses verwendet hat. Siehe Bemerkungen.

Name [in]

Typ: LPCSTR

Zeiger auf eine Zeichenfolge, die die Ressource angibt, aus der das Gitter erstellt werden soll. Siehe Bemerkungen.

Geben Sie [in] ein.

Typ: LPCSTR

Zeiger auf eine Zeichenfolge, die den Ressourcentyp angibt. Siehe Bemerkungen.

Optionen [in]

Typ: DWORD

Kombination eines oder mehrerer Flags aus der D3DXMESH-Enumeration , die Erstellungsoptionen für das Gitter angeben.

pD3DDevice [in]

Typ: LPDIRECT3DDEVICE9

Zeiger auf eine IDirect3DDevice9-Schnittstelle , das dem Gitter zugeordnete Geräteobjekt.

ppAdjacency [out]

Typ: LPD3DXBUFFER*

Adresse eines Zeigers auf eine ID3DXBuffer-Schnittstelle . Wenn die Methode zurückgibt, wird dieser Parameter mit einem Array von drei DWORDs pro Gesicht gefüllt, die die drei Nachbarn für jedes Gesicht im Gitter angeben.

ppMaterials [out]

Typ: LPD3DXBUFFER*

Adresse eines Zeigers auf eine ID3DXBuffer-Schnittstelle . Wenn diese Methode zurückgibt, wird dieser Parameter mit einem Array von D3DXMATERIAL-Strukturen gefüllt, die in der DirectX-Datei gespeicherte Informationen enthalten.

ppEffectInstances [out]

Typ: LPD3DXBUFFER*

Zeiger auf einen Puffer, der ein Array von Effektinstanzen enthält, eine pro Attributgruppe im zurückgegebenen Gitter. Ein Effekt instance ist eine bestimmte instance von Zustandsinformationen, die zum Initialisieren eines Effekts verwendet werden. Siehe D3DXEFFECTINSTANCE. Weitere Informationen zum Zugriff auf den Puffer finden Sie unter ID3DXBuffer.

pNumMaterials [out]

Typ: DWORD*

Zeiger auf die Anzahl der D3DXMATERIAL-Strukturen im ppMaterials-Array , wenn die Methode zurückgibt.

ppMesh [out]

Typ: LPD3DXMESH*

Adresse eines Zeigers auf eine ID3DXMesh-Schnittstelle , die das geladene Gitter darstellt.

Rückgabewert

Typ: HRESULT

Wenn die Funktion erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Funktion fehlschlägt, kann der Rückgabewert einer der folgenden Werte sein: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Bemerkungen

Weitere Informationen zu den Parametern Module, Name und Type finden Sie unter FindResource .

Alle Gitter in der Datei werden in ein Ausgabegitter reduziert. Wenn die Datei eine Framehierarchie enthält, werden alle Transformationen auf das Gitter angewendet.

Für Gitterdateien, die keine Effekt- instance Informationen enthalten, werden standardmäßige Effektinstanzen aus den Materialinformationen in der X-Datei generiert. Ein Standardeffekt instance Standardwerte aufweist, die den Membern der D3DMATERIAL9-Struktur entsprechen.

Der Standardtexturname wird ebenfalls ausgefüllt, aber anders behandelt. Der Name wird Texture0@Name, was einer Effektvariablen mit dem Namen "Texture0" mit einer Anmerkung namens "Name" entspricht. Dies enthält den Namen der Zeichenfolgendatei für die Textur.

Anforderungen

Anforderung Wert
Header
D3DX9Mesh.h
Bibliothek
D3dx9.lib

Siehe auch

Gitterfunktionen

D3DXEFFECTDEFAULT

D3DXEFFECTINSTANCE