D3DXGetShaderInputSemantics-Funktion

Ruft die Semantik für die Shadereingaben ab. Verwenden Sie diese Methode, um das Eingabevertexformat zu bestimmen.

Syntax

HRESULT D3DXGetShaderInputSemantics(
  _In_  const DWORD        *pFunction,
  _In_        D3DXSEMANTIC *pSemantics,
  _Out_       UINT         *pCount
);

Parameter

pFunction [in]

Typ: const DWORD*

Zeiger auf den DWORD-Stream der Shaderfunktion.

pSemantics [in]

Typ: D3DXSEMANTIC*

Zeiger auf ein Array von D3DXSEMANTIC-Strukturen . Die Funktion füllt dieses Array mit der Semantik für jedes Eingabeelement, auf das vom Shader verwiesen wird. Es wird davon ausgegangen, dass dieses Array mindestens MAXD3DDECLLENGTH-Elemente enthält. Das Aufrufen von D3DXGetShaderInputSemantics mit pSemantics = NULL gibt jedoch die Anzahl der für pCount erforderlichen Elemente zurück.

pCount [out]

Typ: UINT*

Gibt die Anzahl der Elemente in pSemantics zurück.

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 sein: D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA, E_OUTOFMEMORY.

Bemerkungen

Verwenden Sie D3DXGetShaderInputSemantics , um eine Liste der Eingabesemantik zurückzugeben, die für den Shader erforderlich ist. Auf diese Weise können Sie ermitteln, was das Eingabevertexformat für einen HLSL-Shader (High-Level Shader Language) ist. Wenn der Shader über zusätzliche Eingaben verfügt, für die Ihre Vertexdeklaration fehlt, können Sie einen zusätzlichen Vertexstream mit einem Schritt von 0 erstellen, der die fehlenden Komponenten mit Standardwerten enthält. Für instance kann dieses Verfahren verwendet werden, um die Standardvertexfarbe für Modelle bereitzustellen, die sie nicht angeben.

Anforderungen

Anforderung Wert
Header
D3DX9Shader.h
Bibliothek
D3dx9.lib

Weitere Informationen

Shaderfunktionen