共用方式為


D3DX11CreateAsyncCompilerProcessor 函式

注意

D3DX (D3DX 9、D3DX 10 和 D3DX 11) 公用程式程式庫已被取代 Windows 8,且 Windows 市集應用程式不支援。 請參閱<備註>。

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

語法

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

參數

pFileName [in]

類型: LPCSTR

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

pDefines [in]

類型: const D3D11_SHADER_MACRO*

著色器宏的 Null 終止陣列;將此設定為 Null ,以指定沒有宏。

pInclude [in]

類型: LPD3D10INCLUDE

include 介面的指標。 此參數可以是 Null

pFunctionName [in]

類型: LPCSTR

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

pProfile [in]

類型: LPCSTR

指定著色器設定檔或著色器模型的字串;可以是著色器模型 2、著色器模型 3、著色器模型 4 或著色器模型 5 中的任何設定檔。 設定檔也可以用於效果類型 (,例如,fx_4_1) 。

Flags1 [in]

類型: UINT

著色器編譯旗標。

Flags2 [in]

類型: UINT

效果編譯旗標。 當您編譯著色器而非效果檔案時, D3DX11CreateAsyncCompilerProcessor 會忽略 Flags2;我們建議您將 Flags2 設定為零,因為如果呼叫的函式不會使用它,則良好的程式設計做法是將非pointer 參數設定為零。

ppCompiledShader [out]

類型: ID3D10Blob**

已編譯效果指標的位址。

ppErrorBuffer [out]

類型: ID3D10Blob**

編譯錯誤的指標位址。

ppDataProcessor [out]

類型: ID3DX11DataProcessor**

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

傳回值

類型: HRESULT

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

備註

D3DX 10 和 D3DX 11 以外沒有非同步載入器的實作。

針對 Windows 市集應用程式,DirectX 範例 (例如,Direct3D教學課程範例) 包含使用非同步程式設計模型Windows 執行階段非同步程式設計模型的BasicLoader模組, (AsyncBase) 。

針對 Win32 傳統型應用程式,您可以使用並行執行時間來實作類似Windows 執行階段非同步程式設計模型的內容。

規格需求

需求
標頭
D3DX11async.h
程式庫
D3DX11.lib

另請參閱

D3DX 函式