ID3DXPRTEngine::MultiplyAlbedo 方法

将每个预计算的辐射传输 (PRT) 矢量乘以每个顶点反照度。

语法

HRESULT MultiplyAlbedo(
  [in, out] LPD3DXPRTBUFFER pDataOut
);

参数

pDataOut [in, out]

类型: LPD3DXPRTBUFFER

指向输出 ID3DXPRTBuffer 对象的指针,该对象将包含 PRT 向量乘以每顶点反照数。 如果此输出缓冲区是纹理对象,则必须注意以与模拟缓冲区相同的分辨率存储纹理的照照度。 可以使用 D3DXLoadSurfaceFromSurface 在反照度上设置适当的分辨率,并应用纹理装订线区域(如果适用)。

返回值

类型: HRESULT

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

备注

ID3DXPRTEngine::Computexxx 方法计算光信号未乘以反照数的输出缓冲区。 通过不乘以反照率,可以比源辐射更精细地对反照率变体进行建模,从而通过压缩得出更准确的结果。

若要在呈现的浅色模型中包括反照量,请在其中一个 Computexxx 方法之后调用此方法。

在调用此方法之前,应调用 ID3DXPRTEngine::SetMeshMaterials

要求

要求
标头
D3DX9Mesh.h

D3dx9.lib

另请参阅

ID3DXPRTEngine

ID3DXPRTEngine::ComputeDirectLightingSH