D3DX11CreateAsyncCompilerProcessor-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. Siehe Hinweise.
Erstellen Sie einen asynchronen Datenprozessor für einen Shader.
Syntax
HRESULT D3DX11CreateAsyncCompilerProcessor(
_In_ LPCSTR pFileName,
_In_ const D3D11_SHADER_MACRO *pDefines,
_In_ LPD3D10INCLUDE pInclude,
_In_ LPCSTR pFunctionName,
_In_ LPCSTR pProfile,
_In_ UINT Flags1,
_In_ UINT Flags2,
_Out_ ID3D10Blob **ppCompiledShader,
_Out_ ID3D10Blob **ppErrorBuffer,
_Out_ ID3DX11DataProcessor **ppDataProcessor
);
Parameter
-
pFileName [in]
-
Typ: LPCSTR
Eine Zeichenfolge, die den Dateinamen des Shaders enthält.
-
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. Dieser Parameter kann NULL sein.
-
pFunctionName [in]
-
Typ: LPCSTR
Name der Shader-Einstiegspunktfunktion, in der die Shaderausführung beginnt. Wenn Sie einen Effekt kompilieren, ignoriert D3DX11CreateAsyncCompilerProcessorpFunctionName; Es wird empfohlen, pFunctionName auf NULL festzulegen, da es eine gute Programmierpraxis ist, einen Zeigerparameter auf NULL festzulegen, wenn die aufgerufene Funktion ihn nicht verwendet.
-
pProfile [in]
-
Typ: LPCSTR
Eine Zeichenfolge, die das Shaderprofil oder das Shadermodell angibt; kann ein beliebiges Profil in Shadermodell 2, Shadermodell 3, Shadermodell 4 oder Shadermodell 5 sein. Das Profil kann auch für den Effekttyp (z. B. fx_4_1) sein.
-
Flags1 [in]
-
Typ: UINT
Shaderkompilierungsflags.
-
Flags2 [in]
-
Typ: UINT
Effektkompilierungsflags. Wenn Sie einen Shader und keine Effektdatei kompilieren, ignoriert D3DX11CreateAsyncCompilerProcessorFlags2; Es wird empfohlen, Flags2 auf 0 festzulegen, da es eine gute Programmierpraxis ist, einen Nichtpointerparameter auf 0 festzulegen, wenn die aufgerufene Funktion ihn nicht verwendet.
-
ppCompiledShader [out]
-
Typ: ID3D10Blob**
Adresse eines Zeigers auf den kompilierten Effekt.
-
ppErrorBuffer [out]
-
Typ: ID3D10Blob**
Adresse eines Zeigers zum Kompilieren von Fehlern.
-
ppDataProcessor [out]
-
Typ: ID3DX11DataProcessor**
Adresse eines Zeigers auf einen Puffer, der den erstellten Datenprozessor enthält (siehe ID3DX11DataProcessor-Schnittstelle).
Rückgabewert
Typ: HRESULT
Der Rückgabewert ist einer der In Direct3D 11-Rückgabecodes aufgeführten Werte.
Bemerkungen
Außerhalb von D3DX 10 und D3DX 11 gibt es keine Implementierung des asynchronen Ladeprogramms.
Für Windows Store-Apps umfassen die DirectX-Beispiele (z. B. das Direct3D-Tutorialbeispiel) das BasicLoader-Modul, das das Windows-Runtime asynchrones Programmiermodell (AsyncBase) verwendet.
Für Win32-Desktop-Apps können Sie die Concurrency Runtime verwenden, um etwas ähnliches wie das Windows-Runtime asynchrones Programmiermodell zu implementieren.
Anforderungen
Anforderung | Wert |
---|---|
Header |
|
Bibliothek |
|