Freigeben über


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, empfiehlt es sich, die D3DPreprocess-API zu verwenden.

Erstellen Sie einen Shader aus einer Ressource, ohne sie 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 abgerufen werden.

pResourceName [in]

Typ: LPCTSTR

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

pSrcFileName [in]

Typ: LPCTSTR

Optional. Effektdateiname, der nur für Fehlermeldungen verwendet wird. Kann NULL sein.

pDefines [in]

Typ: const D3D11_SHADER_MACRO*

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

pInclude [in]

Typ: LPD3D10INCLUDE

Ein Zeiger auf eine Include-Schnittstelle; Legen Sie dies auf NULL fest, um anzugeben, dass keine Includedatei vorhanden ist.

pPump [in]

Typ: ID3DX11ThreadPump*

Ein Zeiger auf eine Threadpumpenschnittstelle (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 Speicher, der Fehler bei der Effekterstellung enthält, sofern vorhanden.

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 In Direct3D 11-Rückgabecodes aufgeführten Werte.

Anforderungen

Anforderung Wert
Header
D3DX11async.h
Bibliothek
D3DX11.lib

Siehe auch

D3DX-Funktionen