Freigeben über


ID3DXPRTEngine::ComputeDirectLightingSH-Methode

Berechnet den direkten Lichtbeitrag zu 3D-Objekten, bei denen die Quellstrahlung durch eine sphärische harmonische Annäherung (SH) dargestellt wird.

Syntax

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

Parameter

Bestellung [in]

Typ: UINT

Reihenfolge der SH-Auswertung. Muss im Bereich der D3DXSH_MINORDER liegen, um D3DXSH_MAXORDER zu D3DXSH_MAXORDER, einschließlich. Die Auswertung generiert Order²-Koeffizienten. Der Grad der Bewertung ist Reihenfolge - 1.

pDataOut [ein, aus]

Typ: LPD3DXPRTBUFFER

Zeiger auf ein ID3DXPRTBuffer-Ausgabeobjekt , das den direkten Beleuchtungsbeitrag mit der SH-Näherung modelliert. Dieser Puffer muss über die richtige Anzahl von Farbkanälen verfügen, die für die Simulation zugewiesen sind.

Rückgabewert

Typ: HRESULT

Wenn die Methode erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Methode fehlschlägt, kann der Rückgabewert einer der folgenden sein: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Bemerkungen

Die Ausgabe enthält keine Albedo, und nur eingehendes Licht ist in den Simulator integriert. Wenn Sie die Albedo nicht multiplizieren, können Sie die Albedovariation in einem feineren Maßstab als die Quellstrahlung modellieren, wodurch genauere Ergebnisse der Komprimierung erzielt werden.

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

Anforderungen

Anforderung Wert
Header
D3DX9Mesh.h
Bibliothek
D3dx9.lib

Siehe auch

ID3DXPRTEngine