Condividi tramite


Metodo ID3DXPRTEngine::ComputeLDPRTCoeffs

Calcola i coefficienti di radianza precompilata in locale (LDPRT) relativi a vettori normali di esempio per ridurre al minimo l'errore dei quadrati minimi rispetto ai dati ID3DXPRTBuffer di input. Questi coefficienti possono essere usati con vettori normali con pelle o trasformati per modellare effetti globali sugli oggetti dinamici.

Sintassi

HRESULT ComputeLDPRTCoeffs(
  [in]      LPD3DXPRTBUFFER pDataIn,
  [in]      UINT            Order,
  [in, out] D3DXVECTOR3     *pNormOut,
  [in, out] LPD3DXPRTBUFFER pDataOut
);

Parametri

pDataIn [in]

Tipo: LPD3DXPRTBUFFER

Puntatore a un oggetto dati PRT (Input ID3DXPRTBuffer ) precomputto armonico (SH).

Ordine [in]

Tipo: UINT

Ordine della valutazione SH. Deve essere compreso nell'intervallo di D3DXSH_MINORDER per D3DXSH_MAXORDER, inclusivo. La valutazione genera coefficienti Order². Il grado della valutazione è Order - 1.

pNormOut [in, out]

Tipo: D3DXVECTOR3*

Matrice vettoriale facoltativa da riempire con vettori normali ottimali dello shader per i quali sono ottimizzati i coefficienti LDPRT. Questa matrice deve essere la stessa dimensione del numero di esempi in pDataIn. Se NULL, vengono usati vettori normali di superficie.

pDataOut [in, out]

Tipo: LPD3DXPRTBUFFER

Puntatore a un oggetto ID3DXPRTBuffer di output che contiene coefficienti armonica zonali dell'ordine per ogni canale di colore per esempio.

Valore restituito

Tipo: HRESULT

Se il metodo ha esito positivo, il valore restituito è D3D_OK. Se il metodo ha esito negativo, il valore restituito può essere uno dei seguenti: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Commenti

Le soluzioni per i vettori normali di ombreggiatura possono essere ottenute facoltativamente con questo metodo. Questi vettori normali, insieme ai coefficienti LDPRT, possono rappresentare in modo più accurato il segnale PRT. In questo caso, i coefficienti rappresentano armonica zonale orientata nella direzione normale.

Questo metodo non può essere usato con risultati da ID3DXPRTEngine::ComputeSurfSamplesBounce o ID3DXPRTEngine::ComputeSurfSamplesDirectSH.

Requisiti

Requisito Valore
Intestazione
D3DX9Mesh.h
Libreria
D3dx9.lib

Vedi anche

ID3DXPRTEngine