共用方式為


D3D10CompileEffectFromMemory 函式 (d3d10effect.h)

編譯效果。

注意 請使用 D3DX10CompileFromMemory ,而不是此函式。
 

語法

HRESULT D3D10CompileEffectFromMemory(
  [in]  void                     *pData,
  [in]  SIZE_T                   DataLength,
  [in]  LPCSTR                   pSrcFileName,
  [in]  const D3D10_SHADER_MACRO *pDefines,
  [in]  ID3D10Include            *pInclude,
  [in]  UINT                     HLSLFlags,
  [in]  UINT                     FXFlags,
  [out] ID3D10Blob               **ppCompiledEffect,
  [out] ID3D10Blob               **ppErrors
);

參數

[in] pData

類型: void*

效果數據的指標;ASCII HLSL 程式代碼或已編譯的效果。

[in] DataLength

類型: SIZE_T

pData 的長度。

[in] pSrcFileName

類型: LPCSTR

效果檔案的名稱。

[in] pDefines

類型: const D3D10_SHADER_MACRO*

選擇性。 null 終止宏定義的陣列, (請參閱 D3D10_SHADER_MACRO) 。

[in] pInclude

類型: ID3D10Include*

選擇性。 ID3D10Include Interface 的指標,用於處理 Include 檔案。 如果著色器包含 #include,將此設定為 NULL 會導致編譯錯誤。

[in] HLSLFlags

類型: UINT

著色器 編譯選項

[in] FXFlags

類型: UINT

效果 編譯選項

[out] ppCompiledEffect

類型: ID3D10Blob**

ID3D10Blob 介面的位址,其中包含已編譯的效果。

[out] ppErrors

類型: ID3D10Blob**

選擇性。 ID3D10Blob 介面的指標,其中包含編譯程式錯誤訊息,如果沒有錯誤則為 NULL

傳回值

類型: HRESULT

傳回下列其中一個 Direct3D 10 傳回碼

備註

此函式會使用 2006 年 11 月 DirectX SDK 中發行的 HLSL 編譯程式版本。

如需範例,請參閱 編譯效果 (Direct3D 10)

規格需求

需求
目標平台 Windows
標頭 d3d10effect.h
程式庫 D3D10.lib
Dll D3D10.dll

另請參閱

效果函式 (Direct3D 10)