D3DX11PreprocessShaderFromResource-Funktion

Hinweis

Die Hilfsprogrammbibliothek D3DX (D3DX 9, D3DX 10 und D3DX 11) ist für Windows 8 veraltet und wird für Windows Store-Apps nicht unterstützt.

Hinweis

Anstatt diese Funktion zu verwenden, wird empfohlen, die D3DPreprocess-API zu verwenden.

Erstellen Sie einen Shader aus einer Ressource, ohne ihn zu kompilieren.

Syntax

HRESULT D3DX11PreprocessShaderFromResource(
  _In_        HMODULE            hModule,
  _In_        LPCTSTR            pResourceName,
  _In_        LPCTSTR            pSrcFileName,
  _In_  const D3D11_SHADER_MACRO *pDefines,
  _In_        LPD3D10INCLUDE     pInclude,
  _In_        ID3DX11ThreadPump  *pPump,
  _Out_       ID3D10Blob         **ppShaderText,
  _Out_       ID3D10Blob         **ppErrorMsgs,
  _Out_       HRESULT            *pHResult
);

Parameter

hModule [ In]

Typ: HMODULE

Handle für das Ressourcenmodul, das den Shader enthält. HMODULE kann mit der GetModuleHandle-Funktion erhalten werden.

pResourceName [ In]

Typ: LPCTSTR

Der Name der Ressource in side hModule, die den Shader enthält. Wenn die Compilereinstellungen Unicode erfordern, wird der Datentyp LPCTSTR in LPCWSTR auflösen. Andernfalls wird der Datentyp in LPCSTR auflösen.

pSrcFileName [ In]

Typ: LPCTSTR

Optional. Name der Effect-Datei, die nur für Fehlermeldungen verwendet wird. Kann NULL sein.

pDefdefine [ In]

Typ: const D3D11 _ SHADER _ MACRO *

Ein NULL-terminiertes Array von Shadermakros; Legen Sie dies auf NULL fest, um keine Makros anzugeben.

pInclude [ In]

Typ: LPD3D10INCLUDE

Ein Zeiger auf eine Includeschnittstelle; Legen Sie diesen Wert auf NULL fest, um anzugeben, dass keine Includedatei enthalten ist.

pPump [ In]

Typ: ID3DX11ThreadPump*

Ein Zeiger auf eine Threadpumpschnittstelle (siehe ID3DX11ThreadPump-Schnittstelle). Verwenden Sie NULL, um anzugeben, dass diese Funktion erst zurückgegeben werden soll, wenn sie abgeschlossen ist.

ppShaderText [ out]

Typ: ID3D10Blob**

Ein Zeiger auf den Arbeitsspeicher, der den nicht kompilierten Shader enthält.

ppErrorMsgs [ out]

Typ: ID3D10Blob**

Die Adresse eines Zeigers auf den Arbeitsspeicher, der Fehler bei der Erstellung von Effekten enthält, sofern ein Fehler aufgetreten ist.

pHResult [ out]

Typ: HRESULT*

Ein Zeiger auf den Rückgabewert. Kann NULL sein. Wenn pPump nicht NULL ist, muss pHResult ein gültiger Speicherort sein, bis die asynchrone Ausführung abgeschlossen ist.

Rückgabewert

Typ: HRESULT

Der Rückgabewert ist einer der Werte, die unter Direct3D 11-Rückgabecodes aufgeführt sind.

Requirements (Anforderungen)

Anforderung Wert
Header
D3DX11async.h
Bibliothek
D3DX11.lib

Weitere Informationen

D3DX-Funktionen