共用方式為


D3DX10PreprocessShaderFromMemory 函式

注意

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

 

從記憶體建立著色器而不進行編譯。

語法

HRESULT D3DX10PreprocessShaderFromMemory(
  _In_        LPCSTR             pSrcData,
  _In_        SIZE_T             SrcDataSize,
  _In_        LPCSTR             pFileName,
  _In_  const D3D_SHADER_MACRO *pDefines,
  _In_        LPD3D10INCLUDE     pInclude,
  _In_        ID3DX10ThreadPump  *pPump,
  _Out_       ID3D10Blob         **ppShaderText,
  _Out_       ID3D10Blob         **ppErrorMsgs
);

參數

pSrcData [in]

類型: LPCSTR

包含著色器的記憶體指標。

SrcDataSize [in]

類型: SIZE_T

著色器的大小。

pFileName [in]

類型: LPCSTR

著色器的名稱。

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

另請參閱

常規用途函式