ID3DXPRTEngine::ComputeDirectLightingSH-Methode

Berechnet den direkten Beleuchtungsbeitrag zu 3D-Objekten, bei denen die Quellstrahlstärke durch eine Sphärische Gleichung (SH)-Näherung dargestellt wird.

Syntax

HRESULT ComputeDirectLightingSH(
  [in]      UINT            Order,
  [in, out] LPD3DXPRTBUFFER pDataOut
);

Parameter

Bestellung [ In]

Typ: UINT

Reihenfolge der SH-Auswertung. Muss im Bereich von D3DXSH _ MINORDER bis D3DXSH _ MAXORDER (einschließlich) liegen. Die Auswertung generiert Order²-Koeffizienten. Der Grad der Auswertung ist "Order - 1".

pDataOut [ in, out]

Typ: LPD3DXPRTBUFFER

Zeiger auf ein ID3DXPRTBuffer-Ausgabeobjekt, das den direkten Beleuchtungsbeitrag mit der SH-Näherung modelliert. Diesem Puffer muss die richtige Anzahl von Farbkanälen für die Simulation zugeordnet sein.

Rückgabewert

Typ: HRESULT

Wenn die Methode erfolgreich ist, lautet der Rückgabewert D3D _ OK. Wenn die Methode fehlschlägt, kann der Rückgabewert einer der folgenden Werte sein: D3DERR _ INVALIDCALL, E _ OUTOFMEMORY.

Hinweise

Die Ausgabe enthält kein Albedo, und nur eingehendes Licht ist in den Simulator integriert. Indem Sie den Albedo nicht multiplizieren, können Sie die Albedo-Variation in einer feineren Skala als die Quellleistung modellieren und so genauere Ergebnisse der Komprimierung erzielen.

Rufen Sie ID3DXPRTEngine::MultiplyAlbedo auf, um jeden voraus berechneten PRT-Vektor (Radiance Transfer) mit dem Albedo zu multiplizieren.

Anforderungen

Anforderung Wert
Header
D3DX9Mesh.h
Bibliothek
D3dx9.lib

Weitere Informationen

ID3DXPRTEngine