Метод Фонга

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

• Определяются нормали к граням.

• По нормалям к граням определяются нормали в вершинах. В каждой точке закрашивае­мой грани определяется интерполированный вектор нормали.

• Цвет каждой точки грани вычисляется в соответствии с направлением интерполирован­ного вектора нормали и согласно выбранной модели отражения света.

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

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

 

 

 

Рис. 8.8. Отличия закрашивания методами Гуро и Фонга

Основные отличия можно заметить, рассматривая закрашивания передней грани. Она перпендикулярна направлению лучей света. Поэтому нормали в вершинах этой грани рас­полагаются симметрично — они образуют попарно равные по абсолютной величине углы с лучами света. Для метода Гуро это обуславливает одинаковые интенсивности отраженного света в вершинах передней грани. А раз интенсивности для всех вершин одинаковые, то цвет всех точек этой грани — константа (при линейной интерполяции), что, в данном слу­чае, неправильно.