D3DX10CreateAsyncCompilerProcessor 函式

建立著色器的非同步資料處理者。

語法

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
);

參數

pFileName [in]

類型: LPCSTR

包含著色器檔案名的字串。

pDefines [in]

類型:const D3D_SHADER_MACRO*

著色器宏的 Null 終止陣列 (請參閱 D3D_SHADER_MACRO) ;將此設定為 Null ,以指定沒有宏。

pInclude [in]

類型: LPD3D10INCLUDE

包含介面的指標 (請參閱 ID3D10Include Interface) 。 此參數可以是 Null

pFunctionName [in]

類型: LPCSTR

著色器執行開始處的著色器進入點函式名稱。 當您編譯效果時, D3DX10CreateAsyncCompilerProcessor 會忽略 pFunctionName;我們建議您將 pFunctionName 設定為 Null ,因為如果呼叫的函式不會使用它,最好是將指標參數設定為 Null

pProfile [in]

類型: LPCSTR

指定 著色器設定檔 或著色器模型的字串。

Flags1 [in]

類型: UINT

著色器編譯旗標

Flags2 [in]

類型: UINT

效果編譯旗標。 當您編譯著色器而非效果檔案時, D3DX10CreateAsyncCompilerProcessor 會忽略 Flags2;我們建議您將 Flags2 設定為零,因為如果呼叫的函式不會使用它,最好是將指標參數設定為 Null

ppCompiledShader [out]

類型: ID3D10Blob**

編譯效果的指標位址 (請參閱 ID3D10Blob 介面) 。

ppErrorBuffer [out]

類型: ID3D10Blob**

編譯錯誤的指標位址 (請參閱 ID3D10Blob 介面) 。

ppDataProcessor [out]

類型: ID3DX10DataProcessor**

緩衝區的指標位址,其中包含 (建立的資料處理者,請參閱 ID3DX10DataProcessor 介面) 。

傳回值

類型: HRESULT

傳回值是 Direct3D 10 傳回碼中列出的其中一個值。

規格需求

需求
標頭
D3DX10Async.h

另請參閱

常規用途函式