Рис. 8.16. Влияние фонового света На рис. 8.16 показано влияние добавления некоторого количества фонового света к диффузному свету, отражаемому сферой. В каждом случае интенсивности диффузного и фонового источников света равны 1,0, а коэффициент диффузного отражения равен 0,04. На изображениях слева направо значения коэффициента фонового отражения принимают значения соответственно 0,0, 0,1, 0,3, 0,5, 0,7. Уже при небольшом количестве фонового света резкие тени на нижней части сферы смягчаются и выглядят более реалистичными. С другой стороны, избыток фонового света чрезмерно подавляет тени.

8.2.5. Комбинирование компонентов освещения Теперь мы можем сложить три компонента освещения - диффузный, зеркальный и фоновый, чтобы получить суммарное количество света /, которое попадает в глаз из точки Р, а именно:

7 = 7А + 7А х ^тЪеЛ + /рр5 х рЬ.оп£', (8.5) где введены величины:

(8.6)

Величина / зависит от различных интенсивностен источников и коэффициентов отражения объекта, а также от соотношения положений точки Р, глаза и точечного источника света. Здесь интенсивности Рис. 8.16. Влияние фонового света

Визуализация граней для усиления реалистичности

диффузного Id и зеркального I компонентов обозначены различными буквами, поскольку в OpenGL предоставляется возможность задавать их раздельно, как мы увидим позднее. На практике обе эти интенсивности обычно имеют одну и ту же величину.

Рассмотрим несколько подробнее изменение интенсивности 7 в зависимости от положения точки Р, для чего снова вернемся к рис. 8.12. Интенсивность 7 вычисляется для различных точек Р рассматриваемой микрограни. Фоновый компонент не претерпевает никаких изменений в пределах микрограни; вектор m одинаков для всех точек Р микрограни, но направления векторов s и v зависят от Р. (Пусть, например, s - S - Р, где S - расположение источника света. Как значение вектора v зависит от точки Р и глаза?) Если источник света достаточно удален (это типичный случай), то вектор s при изменении точки Р меняется незначительно; так что и диффузный компонент также будет незначительно изменяться для различных точек Р. Это особенно верно, когда векторы вит почти параллельны, так как для малых углов косинус изменяется медленно. Для удаленных источников света изменение направления промежуточного вектора h также слабо зависит от изменения точки Р. С другой стороны, если источник света расположен близко к микрограни, то по мере изменения точки Р векторы s и h могут сильно изменяться. В этом случае зеркальный компонент может сильно изменяться в пределах микрограни, поэтому яркий блик может быть локализован в ее малой области. Этот эффект усиливается, когда глаз также расположен близко к микрограни, вызывая сильные изменения в направлении v, и когда показатель степени / очень велик.


⇐ Предыдущая| |Следующая ⇒