Поиск
На сайте: 763831 статей, 327745 фото.

Затемнение Фонга

Затемнение Фонга — метод отрисовки полигональных моделей.

Модели обычно задаются набором плоских выпуклых граней. Существует несколько простых методов рендеринга: метод плоского (постоянного) закрашивания, метод Гуро и метод Фонга.

Гладкий объект от негладкого отличается тем, что на его поверхности можно задать непрерывное поле единичных векторов нормали. Для искусственного построения используется билинейная интерполяция не к значениям освещенности (как в методе Гуро), а к значениям векторов нормали, что помогает достичь более реалистичных результатов.

В качестве модели освещенности в точке обычно используются следующие модели:

<math>I=K_aI_a+K_d(n,l)\,\!</math>

или

<math>I=K_aI_a+K_d(n,l)+K_s(n,h)^p\,\!</math>

где

<math>n\,\!</math> — вектор нормали

<math>l\,\!</math> — направление проецирования

<math>K_a\,\!</math> — коэффициент фонового освещения

<math>K_s\,\!</math> — коэффициент зеркального освещения

<math>K_d\,\!</math> — коэффициент диффузного освещения

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

Методы Гуро и Фонга используют только векторы нормали, заданные в вершинах грани. Для нахождения вектора нормали в вершине используют нормированную взвешенную сумму векторов нормали граней, которым эта вершина принадлежит:

<math>n=\frac{a_1 n_1+...+a_k n_k}{\left \Vert a_1 n_1+...+a_k n_k\right\|}</math>


Первоначальная версия этой статьи была взята из русской Википедии на условиях лицензии GNU FDL.