ID3DXPRTEngine::ComputeVolumeSamples-Methode

Berechnet eine Projektion der direkten Beleuchtung aus dem vorherigen Lichtsprung in SH-Basisvektoren (Spherical Computing), die die Darstellung von Vorfällen an angegebenen Stellen darstellen.

Syntax

HRESULT ComputeVolumeSamples(
  [in]            LPD3DXPRTBUFFER pSurfDataIn,
  [in]            UINT            Order,
  [in]            UINT            NumVolSamples.xml,
  [in]      const D3DXVECTOR3     *pSampleLocs,
  [in, out]       LPD3DXPRTBUFFER pDataOut
);

Parameter

pSurfDataIn [ In]

Typ: LPD3DXPRTBUFFER

Zeiger auf ein Eingabe-ID3DXPRTBuffer-Objekt, das das 3D-Objekt aus dem vorherigen Lichtsprung darstellt.

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.

NumVolSamples.xml [ In]

Typ: UINT

Anzahl von Beispielstandorten.

pSampleLocs [ In]

Typ: const D3DXVECTOR3 *

Position für jedes Beispiel. Wenn pSampleLocs NULL ist, berechnet ComputeVolumeSamples Übertragungsmatrizen an jedem Gitternetz-Scheitelpunkt. Wenn pSampleLocs jedoch nicht NULL ist, müssen Sie eine Stichprobe für eine Kugel erstellen (legen Sie UseSphere = TRUE und UseCosine = FALSE in ID3DXPRTEngine::SetSamplingInfofest). Andernfalls gibt ComputeVolumeSamples D3DERR _ INVALIDCALL zurück.

pDataOut [ in, out]

Typ: LPD3DXPRTBUFFER

Zeiger auf ein ID3DXPRTBuffer-Ausgabeobjekt, das die direkte Beleuchtung aus dem vorherigen Lichtsprung in SH-Basisvektoren darstellt. Für diesen Puffer muss die richtige Anzahl von Farbkanälen für die Simulation zugeordnet sein.

Rückgabewert

Typ: HRESULT

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

Bemerkungen

Diese Methode berechnet, wie das Licht aus der Quell-Radiance-Funktion von der Oberfläche reflektiert wird, die die Szene darstellt (pSurfDataIn) und an jedem Punkt im durch pSampleLocs angegebenen Raum eintrifft. Die SH-Koeffizienten stellen die Zuordnung der Quellausdehnung an jedem pSampleLocs-Punkt zum übertragenen Vorfallsausmaß dar.

Requirements (Anforderungen)

Anforderung Wert
Header
D3DX9Mesh.h
Bibliothek
D3dx9.lib

Weitere Informationen

ID3DXPRTEngine

ID3DXPRTEngine::ComputeVolumeSamplesDirectSH