D3DXCreatePRTBuffer 函数

创建一个预计算的辐射传输 (PRT) 缓冲区,该缓冲区可由模拟器压缩或填充。 此函数应用于创建每个顶点或卷缓冲区。

语法

HRESULT D3DXCreatePRTBuffer(
  _In_    UINT            NumSamples,
  _In_    UINT            NumCoeffs,
  _In_    UINT            NumChannels,
  _Inout_ LPD3DXPRTBUFFER *ppBuffer
);

参数

NumSamples [in]

类型: UINT

) 采样 (或纹素的顶点数。

NumCoeffs [in]

类型: UINT

每个样本位置的系数数。 使用球面调和 (SH) PRT 时,系数数应为 Order²,其中 Order 是 SH 计算的顺序。 顺序必须在 D3DXSH_MINORDER 范围内才能D3DXSH_MAXORDER(含)。 评估的程度为 Order - 1。

NumChannels [in]

类型: UINT

在网格中设置的颜色通道数。 设置为 1 可指定灰色材料 (R = G = B) ,或 3 以启用颜色出血效果。

ppBuffer [in, out]

类型: LPD3DXPRTBUFFER*

指向创建的 ID3DXPRTBuffer 对象的指针的地址。

返回值

类型: HRESULT

如果函数成功,则返回值S_OK。 如果函数失败,则返回值可以是以下值之一:D3DERR_INVALIDCALL、E_OUTOFMEMORY。

备注

创建缓冲区时,所有值都初始化为零。

要求

要求
标头
D3DX9Mesh.h

D3dx9.lib

另请参阅

预计算的辐射传输函数

D3DXCreatePRTBufferTex