Método ID3DXPRTEngine::ComputeVolumeSamples

Calcula una proyección de la iluminación directa a partir de los vectores de base de la iluminación anterior en vectores de base esférica (SH) que representan el brillo de los incidentes en ubicaciones especificadas.

Sintaxis

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

Parámetros

p ResalteDataIn [ En]

Tipo: LPD3DXPRTBUFFER

Puntero a un objeto ID3DXPRTBuffer de entrada que representa el objeto 3D de la luz anterior.

Pedido [ En]

Tipo: UINT

Orden de la evaluación de SH. Debe estar en el intervalo de D3DXSH _ MINORDER a D3DXSH _ MAXORDER, ambos inclusive. La evaluación genera coeficientes order-to-order. El grado de la evaluación es Order - 1.

NumVolSamples.xml [ En]

Tipo: UINT

Número de ubicaciones de ejemplo.

pSampleLocs [ En]

Tipo: const D3DXVECTOR3 *

Posición para cada muestra. Si pSampleLocs es NULL, ComputeVolumeSamples calculará las matrices de transferencia en cada vértice de malla. Sin embargo, si pSampleLocs no es NULL, debe muestrear en una esfera (establezca UseSphere = TRUE y UseCosine = FALSE en ID3DXPRTEngine::SetSamplingInfo); De lo contrario, ComputeVolumeSamples devolverá D3DERR _ INVALIDCALL.

pDataOut [ in, out]

Tipo: LPD3DXPRTBUFFER

Puntero a un objeto ID3DXPRTBuffer de salida que proyecta la iluminación directa de la luz anterior en vectores de base SH. Este búfer debe tener asignado el número adecuado de canales de color para la simulación.

Valor devuelto

Tipo: HRESULT

Si el método se realiza correctamente, el valor devuelto es D3D _ OK. Si se produce un error en el método , el valor devuelto puede ser uno de los siguientes: D3DERR _ INVALIDCALL, E _ OUTOFMEMORY.

Observaciones

Este método calcula cómo la luz de la función de radiancia de origen se refleja fuera de la superficie que representa la escena (pSampleDataIn) y llega a cada punto del espacio especificado por pSampleLocs. Los coeficientes sh representan la asignación, en cada punto pSampleLocs, de la radiancia de origen a la radiación del incidente transferido.

Requisitos

Requisito Value
Encabezado
D3DX9Mesh.h
Biblioteca
D3dx9.lib

Vea también

ID3DXPRTEngine

ID3DXPRTEngine::ComputeVolumeSamplesDirectSH