共用方式為


D3DX10PreprocessShaderFromResource 函式

注意

建議您使用 D3DPreprocess API,而不是使用此舊版函式。

 

從資源建立著色器而不進行編譯。

語法

HRESULT D3DX10PreprocessShaderFromResource(
  _In_        HMODULE            hModule,
  _In_        LPCTSTR            pResourceName,
  _In_        LPCTSTR            pSrcFileName,
  _In_  const D3D_SHADER_MACRO *pDefines,
  _In_        LPD3D10INCLUDE     pInclude,
  _In_        ID3DX10ThreadPump  *pPump,
  _Out_       ID3D10Blob         **ppShaderText,
  _Out_       ID3D10Blob         **ppErrorMsgs
);

參數

hModule [in]

類型: HMODULE

包含著色器的資源模組控制碼。 您可以使用 GetModuleHandle 函式來取得 HMODULE。

pResourceName [in]

類型: LPCTSTR

包含著色器之側 hModule 的資源名稱。 如果編譯器設定需要 Unicode,則資料類型 LPCTSTR 會解析為 LPCWSTR。 否則,資料類型會解析為 LPCSTR。

pSrcFileName [in]

類型: LPCTSTR

選擇性。 效果檔案名,僅用於錯誤訊息。 可以是 Null

pDefines [in]

類型:const D3D_SHADER_MACRO*

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

pInclude [in]

類型: LPD3D10INCLUDE

包含介面的指標 (請參閱 ID3D10Include 介面) ;將此設定為 Null ,以指定沒有 include 檔案。

pPump [in]

類型: ID3DX10ThreadPump*

執行緒幫浦介面的指標 (請參閱 ID3DX10ThreadPump 介面) 。 使用 Null 指定此函式在完成之前不應傳回。

ppShaderText [out]

類型: ID3D10Blob**

記憶體 (的指標,請參閱包含未編譯著色器的 ID3D10Blob 介面) 。

ppErrorMsgs [out]

類型: ID3D10Blob**

記憶體指標的位址 (如果發生,請參閱 ID3D10Blob 介面) ,其中包含效果建立錯誤。

傳回值

類型: HRESULT

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

規格需求

需求
標頭
D3DX10.h
程式庫
D3DX10.lib

另請參閱

常規用途函式