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 接口 的指针,用于处理包含文件。 如果着色器包含 #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
Library D3D10.lib
DLL D3D10.dll

另请参阅

Direct3D 10) (效果函数