Freigeben über


D3DXAssembleShaderFromFile-Funktion

Stellen Sie einen Shader zusammen.

Syntax

HRESULT D3DXAssembleShaderFromFile(
  _In_        LPCTSTR       pSrcFile,
  _In_  const D3DXMACRO     *pDefines,
  _In_        LPD3DXINCLUDE pInclude,
  _In_        DWORD         Flags,
  _Out_       LPD3DXBUFFER  *ppShader,
  _Out_       LPD3DXBUFFER  *ppErrorMsgs
);

Parameter

pSrcFile [in]

Typ: LPCTSTR

Zeiger auf eine Zeichenfolge, die den Dateinamen angibt. Wenn die Compilereinstellungen Unicode erfordern, wird der Datentyp LPCTSTR in LPCWSTR aufgelöst. Andernfalls wird der Zeichenfolgendatentyp in LPCSTR aufgelöst. Siehe Hinweise.

pDefines [in]

Typ: const D3DXMACRO*

Ein optionales NULL-beendetes Array von D3DXMACRO-Strukturen . Dieser Wert kann NULL sein.

pInclude [in]

Typ: LPD3DXINCLUDE

Optionaler Schnittstellenzeiger ID3DXInclude, der für die Verarbeitung #include-Anweisungen verwendet werden soll. Wenn dieser Wert NULL ist, wird #includes entweder beim Kompilieren aus einer Datei berücksichtigt oder verursacht einen Fehler, wenn er aus einer Ressource oder einem Arbeitsspeicher kompiliert wird.

Flaggen [in]

Typ: DWORD

Kompilieren von Optionen, die durch verschiedene Flags identifiziert werden. Der Direct3D 10 HLSL-Compiler ist jetzt der Standard. Weitere Informationen finden Sie unter D3DXSHADER Flags .

ppShader [out]

Typ: LPD3DXBUFFER*

Gibt einen Puffer zurück, der den erstellten Shader enthält. Dieser Puffer enthält den kompilierten Shadercode sowie alle eingebetteten Debug- und Symboltabelleninformationen.

ppErrorMsgs [out]

Typ: LPD3DXBUFFER*

Gibt einen Puffer mit einer Liste von Fehlern und Warnungen zurück, die während der Kompilierung aufgetreten sind. Dies sind dieselben Meldungen, die der Debugger beim Ausführen im Debugmodus anzeigt. Dieser Wert kann NULL sein.

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

Die Compilereinstellung bestimmt auch die Funktionsversion. Wenn Unicode definiert ist, wird der Funktionsaufruf in D3DXAssembleShaderFromFileW aufgelöst. Andernfalls wird der Funktionsaufruf in D3DXAssembleShaderFromFileA aufgelöst, da ANSI-Zeichenfolgen verwendet werden.

Anforderungen

Anforderung Wert
Header
D3DX9Shader.h
Bibliothek
D3dx9.lib

Siehe auch

Shaderfunktionen

D3DXCompileShader

D3DXCompileShaderFromResource