Freigeben über


D3DX10CreateAsyncCompilerProcessor-Funktion

Erstellen Sie einen asynchronen Datenprozessor für einen Shader.

Syntax

HRESULT D3DX10CreateAsyncCompilerProcessor(
  _In_        LPCSTR               pFileName,
  _In_  const D3D10_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_       ID3DX10DataProcessor **ppDataProcessor
);

Parameter

pFileName [in]

Typ: LPCSTR

Eine Zeichenfolge, die den Dateinamen des Shaders enthält.

pDefines [in]

Typ: const D3D_SHADER_MACRO*

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

pInclude [in]

Typ: LPD3D10INCLUDE

Ein Zeiger auf eine Include-Schnittstelle (siehe ID3D10Include-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 D3DX10CreateAsyncCompilerProcessorpFunctionName; 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 shadermodell angibt.

Flags1 [in]

Typ: UINT

Shaderkompilierungsflags.

Flags2 [in]

Typ: UINT

Effektkompilierungsflags. Wenn Sie einen Shader und keine Effektdatei kompilieren, ignoriert D3DX10CreateAsyncCompilerProcessorFlags2; Es wird empfohlen, Flags2 auf 0 festzulegen, da es eine gute Programmierpraxis ist, einen Zeigerparameter auf NULL festzulegen, wenn die aufgerufene Funktion ihn nicht verwendet.

ppCompiledShader [out]

Typ: ID3D10Blob**

Adresse eines Zeigers auf den kompilierten Effekt (siehe ID3D10Blob-Schnittstelle).

ppErrorBuffer [out]

Typ: ID3D10Blob**

Adresse eines Zeigers zum Kompilieren von Fehlern (siehe ID3D10Blob-Schnittstelle).

ppDataProcessor [out]

Typ: ID3DX10DataProcessor**

Adresse eines Zeigers auf einen Puffer, der den erstellten Datenprozessor enthält (siehe ID3DX10DataProcessor-Schnittstelle).

Rückgabewert

Typ: HRESULT

Der Rückgabewert ist einer der In Direct3D 10-Rückgabecodes aufgeführten Werte.

Anforderungen

Anforderung Wert
Header
D3DX10Async.h

Siehe auch

Universell-Funktionen