Второй:
Рис 2.3
Тень
второго типа – тень, отбрасываемая одним объектом на другой.
Наблюдателя
помещаем в S (некоторого вспомогательного наблюдателя).
Сначала
строим вспомогательный буфер глубины для вспомогательного наблюдателя.
Рис
2.4
При
построении второго буфера глубины используем ту же точку фиксации взгляда.
(куда смотрим мы, туда и вспомогательный наблюдатель.)
1 Этап
– построение Hs.
2 Этап
– построение H,V.
Обработка
каждой текущей точки будет производиться в соответствии со следующим алгоритмом.
(когда мы идём по сканированной строке).
Нам
известно: x,
y – координаты в плоскости изображения.
U - яркость
U0 - яркость для точки в тени.
h - текущее значение
параметра глубины.
Имеется
HS , H , V.
Условие
(**) проверяет - освещена точка или
нет.
Если
условие не выполняется, то точка не освещена, и имеет место тень второго типа.
Пересчет
точек из одной системы координат в другую осуществляется следующим образом.
где:
Из
первого уравнения найдем пространственные координаты.
Чтобы
перейти в другую систему координат необходимо осуществить параллельный перенос
Перед
этим из выражения (*) мы получаем SS через S
Для
расчета коэффициентов применим следующие формулы: