Преобразования пространства камеры
Вершины в пространстве камеры вычисляются путем преобразования вершин объекта с помощью матрицы представления реального мира.
V = V * wvMatrix
Нормали вершин в пространстве камеры вычисляются путем преобразования нормалей объекта с обратной перестановкой матрицы представления реального мира. Матрица представления реального мира может быть ортогональной, однако это не обязательно.
N = N * (wvMatrix⁻¹)T
Инверсия и перестановка матрицы выполняются в матрице 4x4. При умножении нормаль объединяется с частью 3x3 получившейся матрицы 4x4.
Если состояние отрисовки настроено с нормализацией нормалей, векторы нормали вершины нормализуются после преобразования в пространство камеры следующим образом:
N = norm(N)
Положение источника света в пространстве камеры вычисляется путем преобразования положения источника света с матрицей представления.
Lp = Lp * vMatrix
Направление к свету в пространстве камеры (для направленного света) вычисляется путем умножения направления источника света и матрицы представления. В результате происходит нормализация и инверсия результата.
Ldir = -norm(Ldir * wvMatrix)
Для точечного освещения и вспышки направление к свету вычисляется следующим образом:
Ldir = norm(V - Lp), где параметры определены в следующей таблице.
Параметр | Значение по умолчанию | Тип | Описание |
---|---|---|---|
Ldir | Н/Д | Трехмерный вектор (значения с плавающей запятой x, y и z) | Вектор направления от вершины объекта до света |
V | Н/Д | Трехмерный вектор (значения с плавающей запятой x, y и z) | Положение вершины в пространстве камеры |
wvMatrix | Идентификация | Матрица 4x4 значений с плавающей запятой | Составная матрица, содержащая преобразования реального мира и представления |
Нет | Н/Д | Трехмерный вектор (значения с плавающей запятой x, y и z) | Нормаль вершины |
Lₚ | Н/Д | Трехмерный вектор (значения с плавающей запятой x, y и z) | Положение света в пространстве камеры |
vMatrix | Идентификация | Матрица 4x4 значений с плавающей запятой | Матрица, содержащая преобразование представления |
Связанные темы
Математические аспекты освещения
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по