Метод ID3DXPRTEngine::ComputeLDPRTCoeffs
Вычисляет локально деформируемые коэффициенты передачи сияния (LDPRT) относительно векторов нормальной выборки, чтобы свести к минимуму погрешность наименьших квадратов относительно входных данных ID3DXPRTBuffer . Эти коэффициенты можно использовать с обкожными или преобразованными нормальными векторами для моделирования глобальных эффектов на динамические объекты.
Синтаксис
HRESULT ComputeLDPRTCoeffs(
[in] LPD3DXPRTBUFFER pDataIn,
[in] UINT Order,
[in, out] D3DXVECTOR3 *pNormOut,
[in, out] LPD3DXPRTBUFFER pDataOut
);
Параметры
-
pDataIn [in]
-
Тип: LPD3DXPRTBUFFER
Указатель на входной объект данных ID3DXPRTBuffer с предварительно вычисляемым объектом данных передачи сияния (PRT).
-
Order [in]
-
Тип: UINT
Порядок оценки SH. Должен находиться в диапазоне D3DXSH_MINORDER для D3DXSH_MAXORDER включительно. При вычислении создаются коэффициенты Order². Степень оценки — Order - 1.
-
pNormOut [вход, выход]
-
Тип: D3DXVECTOR3*
Необязательный массив векторов, заполняемый оптимальными для шейдера векторами нормы, для которых оптимизированы коэффициенты LDPRT. Этот массив должен иметь тот же размер, что и количество выборок в pDataIn. Если значение РАВНО NULL, используются векторы нормальной поверхности.
-
pDataOut [вход, выход]
-
Тип: LPD3DXPRTBUFFER
Указатель на выходной объект ID3DXPRTBuffer , содержащий упорядоченные зональные гармонические коэффициенты на цветовой канал на выборку.
Возвращаемое значение
Тип: HRESULT
Если метод выполнен успешно, возвращаемое значение будет D3D_OK. Если метод завершается ошибкой, возвращаемое значение может быть одним из следующих: D3DERR_INVALIDCALL, E_OUTOFMEMORY.
Комментарии
Решения для заливки нормальных векторов можно при необходимости получить с помощью этого метода. Эти нормальные векторы, наряду с коэффициентами LDPRT, могут более точно представлять сигнал PRT. В этом случае коэффициенты представляют зональные гармоники, ориентированные в нормальном направлении.
Этот метод нельзя использовать с результатами ID3DXPRTEngine::ComputeSurfSamplesBounce или ID3DXPRTEngine::ComputeSurfSamplesDirectSH.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел