Поделиться через


Зрительное освещение

Спекулярное освещение определяет яркие зрительные выделения, которые происходят при попадании света на поверхность объекта и отражается обратно к камере. Зрительное освещение является более интенсивным, чем диффузный свет и падает быстрее по всей поверхности объекта. Для вычисления зеркального освещения требуется больше времени, чем диффузное освещение, однако преимущество использования заключается в том, что он добавляет значительные детали к поверхности.

Моделирование зеркального отражения требует, чтобы система знала, в каком направлении свет перемещается и направление к глазу зрителя. В системе используется упрощенная версия модели отражения фонга, которая использует полпутный вектор для приближения интенсивности зеркального отражения.

Состояние освещения по умолчанию не вычисляет зрительные выделения.

Уравнение зрительного освещения

Спецификация освещения описана в следующем уравнении.

Спекулярное освещение = Cs * sum[Ls * (N · H)P * Atten * Spot]

Переменные, их типы и их диапазоны приведены следующим образом:

Параметр Default value Тип Описание
Cs (0,0,0,0) Красный, зеленый, синий и альфа-прозрачность (значения с плавающей запятой) Зримный цвет.
sum Неприменимо Неприменимо Суммирование каждого компонента освещения.
N Н/П Трехмерный вектор (значения x, y и z с плавающей запятой) Нормальное состояние вершины.
H Н/П Трехмерный вектор (значения x, y и z с плавающей запятой) Вектор на полпути. См. раздел на полпути вектора.
P 0,0 С плавающей запятой Спектрулярное отражение. Диапазон составляет от 0 до +бесконечности
Ls (0,0,0,0) Красный, зеленый, синий и альфа-прозрачность (значения с плавающей запятой) Светлый зрителя цвет.
Аттен Н/П С плавающей запятой Значение легкого аттенуации. См . сведения о аттенуации и факторе внимания.
Точечные Н/П С плавающей запятой Фактор внимания. См . сведения о аттенуации и факторе внимания.

 

Значение для Cs равно:

  • Цвет вершины 1, если источник спектрированного материала является цветом диффузной вершины, а первый цвет вершины предоставляется в объявлении вершины.
  • Цвет вершины 2, если источник спекулярного материала является цветом спекулярной вершины, а второй цвет вершины предоставляется в объявлении вершины.
  • цвет с спектром материалов

Обратите внимание , что если используется любой из вариантов источника материала и цвет вершины не указан, используется цвет спекулярного материала.

 

Спекулярные компоненты зацепляются от 0 до 255, после обработки и интерполяции всех световых элементов отдельно.

Вектор на полпути

Вектор на полпути (H) существует по середине между двумя векторами: вектором от вершины объекта к источнику света и вектором от вершины объекта к позиции камеры. Direct3D предоставляет два способа вычисления вектора на полпути. Если включена относительная камера(а не ортогональные зрителя), система вычисляет полупутный вектор с помощью положения камеры и положения вершины, а также вектора направления света. Следующая формула иллюстрирует это.

H = norm(norm(Cp - Vp) + Ldir)

 

Параметр Default value Тип Описание
Cp Н/П Трехмерный вектор (значения x, y и z с плавающей запятой) Позиция камеры.
Vp Н/П Трехмерный вектор (значения x, y и z с плавающей запятой) Позиция вершины.
Ldir Н/П Трехмерный вектор (значения x, y и z с плавающей запятой) Вектор направления от вершины до позиции света.

 

Определение половинного вектора таким образом может быть вычислительным ресурсоемким. В качестве альтернативы использование ортогональных точечных выделений (а не относительно камеры) предписывает системе действовать так, как будто точка зрения бесконечно удалена на оси z. Это отражается в следующей формуле.

H = norm((0,0,1) + Ldir)

Этот параметр является менее вычислительным, но гораздо менее точным, поэтому он лучше всего используется приложениями, используюющими ортогональную проекцию.

Пример

В этом примере объект цветируется с помощью зрителя сцены и зрителя материала.

В соответствии с уравнением результирующий цвет для вершин объекта является сочетанием цвета материала и светлого цвета.

На следующем рисунке показан цвет зрителя материала, который является серым, а также цветом светлого света, который является белым.

иллюстрация серой сферыиллюстрация белой сферы

Результирующее изображение показано на следующем рисунке.

иллюстрация зрителя

Объединение зрительного выделения с внешним и диффузным освещением производит следующую иллюстрацию. При применении всех трех типов освещения это более четко напоминает реалистичный объект.

иллюстрация объединения зрительного выделения, освещения окружающей среды и диффузного освещения

Зрительное освещение более интенсивно вычисляется, чем диффузное освещение. Обычно он используется для предоставления визуальных подсказок о материалах поверхности. Зримочное выделение зависит от размера и цвета с материалом поверхности.

Математика освещения