ID3DXPRTEngine::MultiplyAlbedo
それぞれの事前演算済み放射輝度伝播 (PRT) ベクトルを各頂点のアルベド値で乗算します。
HRESULT
MultiplyAlbedo(
LPD3DXPRTBUFFER pDataOut
);
パラメータ
- pDataOut
頂点ごとのアルベドで乗算した PRT ベクトルを格納する、出力の ID3DXPRTBuffer オブジェクトへのポインターです。この出力バッファーがテクスチャー オブジェクトである場合、テクスチャーのアルベドを、シミュレーション バッファーと同じ解像度で格納するように注意する必要があります。アルベドの適切な解像度を D3DXLoadSurfaceFromSurface で設定して、必要に応じてテクスチャーの余白領域を適用することができます。
戻り値
成功すると、S_OK を返します。失敗した場合は、次の戻り値のいずれかを返します。D3DERR_INVALIDCALL、E_OUTOFMEMORY
解説
ID3DXPRTEngine::Computexxx メソッドは、ライト信号がアルベドで乗算されていない出力バッファーを算出します。アルベドを乗算しない場合、アルベドの変動を光源放射輝度よりも微細なスケールでモデリングすることができ、それによって、圧縮の結果がより正確になります。
レンダリングしたライトのモデルにアルベドを含めるには、このメソッドを Computexxx メソッドのいずれかの後に呼び出します。
このメソッドを呼び出す前に ID3DXPRTEngine::SetMeshMaterials を呼び出す必要があります。
要件
ヘッダー: D3DX9Mesh.h 宣言
ライブラリ: D3dx9.lib 内容