ID3DXPRTEngine::ComputeDirectLightingSHAdaptive 方法

使用自适应采样计算对 3D 对象的直接照明贡献,其中源辐射由球面和谐 (SH) 近似值表示。 此方法在网格上生成新的顶点和面,以更准确地接近预计算的辐射传输 (PRT) 信号。

语法

HRESULT ComputeDirectLightingSHAdaptive(
  [in]      UINT            Order,
  [in]      FLOAT           AdaptiveThresh,
  [in]      FLOAT           MinEdgeLength,
  [in]      UINT            MaxSubdiv,
  [in, out] LPD3DXPRTBUFFER pDataOut
);

参数

Order [in]

类型: UINT

SH 评估的顺序。 必须在 D3DXSH_MINORDER 范围内才能D3DXSH_MAXORDER(含)。 计算将生成 Order² 系数。 评估程度为 Order - 1。

AdaptiveThresh [in]

类型: FLOAT

用于细分网格顶点和面的 PRT 向量上的阈值。 如果小于 1e-6f,则指定默认值 1e-6f。

MinEdgeLength [in]

类型: FLOAT

自适应采样中将生成的最小面边缘长度。 如果 方法确定值太小,则指定依赖于模型的值。 如果为零,则指定默认值 4。

MaxSubdiv [in]

类型: UINT

将用于自适应采样的人脸的最大细分级别。

pDataOut [in, out]

类型: LPD3DXPRTBUFFER

指向输出 ID3DXPRTBuffer 对象的指针。 此缓冲区必须为模拟分配正确数量的颜色通道。

返回值

类型: HRESULT

如果方法成功,则返回值D3D_OK。 如果方法失败,则返回值可以是以下值之一:D3DERR_INVALIDCALL、E_OUTOFMEMORY。

要求

要求
标头
D3DX9Mesh.h

D3dx9.lib

另请参阅

ID3DXPRTEngine

ID3DXPRTEngine::RobustMeshRefine