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 设置为零,因为如果调用的函数不使用它,则最好将非点参数设置为零。

ppCompiledShader [out]

类型: ID3D10Blob**

指向已编译效果的指针的地址。

ppErrorBuffer [out]

类型: ID3D10Blob**

用于编译错误的指针的地址。

ppDataProcessor [out]

类型: ID3DX11DataProcessor**

指向包含所创建数据处理器的缓冲区的指针的地址 (请参阅 ID3DX11DataProcessor 接口) 。

返回值

类型: HRESULT

返回值是 Direct3D 11 返回代码中列出的值之一。

备注

D3DX 10 和 D3DX 11 之外没有异步加载程序实现。

例如,对于 Windows 应用商店应用,DirectX 示例 (Direct3D 教程示例) 包括使用 AsyncBase) Windows 运行时 异步编程 (模型的 BasicLoader 模块。

对于 Win32 桌面应用,可以使用并发运行时来实现类似于Windows 运行时异步编程模型的内容。

要求

要求
标头
D3DX11async.h

D3DX11.lib

另请参阅

D3DX 函数