共用方式為


ID3DXPRTEngine::MultiplyAlbedo 方法

將每個預先計算的弧度傳輸乘以每個頂點 albedo (PRT) 向量。

語法

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

參數

pDataOut [in, out]

類型: LPD3DXPRTBUFFER

輸出 ID3DXPRTBuffer 物件的指標,該物件將包含 PRT 向量乘以每個頂點 albedo。 如果這個輸出緩衝區是紋理物件,則必須小心以模擬緩衝區相同的解析度儲存紋理的 albedo。 您可以使用 D3DXLoadSurfaceFromSurface在 albedo 上設定適當的解析度,並適當地套用紋理裝訂區域。

傳回值

類型: HRESULT

如果方法成功,傳回值會S_OK。 如果方法失敗,傳回值可以是下列其中一項:D3DERR_INVALIDCALL,E_OUTOFMEMORY。

備註

ID3DXPRTEngine::Computexxx 方法會計算光線訊號尚未乘以 albedo 的輸出緩衝區。 藉由不相乘 albedo,您可以比來源弧度更精細地建立 albedo 變化的模型,藉此從壓縮產生更精確的結果。

若要在轉譯光線模型中加入 albedo,請在其中一個 Computexxx 方法之後呼叫這個方法。

呼叫此方法之前,應該先呼叫ID3DXPRTEngine::SetMeshMaterials

規格需求

需求
標頭
D3DX9Mesh.h
程式庫
D3dx9.lib

另請參閱

ID3DXPRTEngine

ID3DXPRTEngine::ComputeDirectLightingSH