Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
grafika_ekzamen.docx
Скачиваний:
138
Добавлен:
11.02.2015
Размер:
5.88 Mб
Скачать

27) Закраска методом Гуро.

Метод закраски, который основан на интерполяции интенсивности и известен как метод Гуро (по имени его разработчика), позволяет устранить дискретность изменения интенсивности. Процесс закраски по методу Гуро осуществляется в четыре этапа:

1. Вычисляются нормали ко всем полигонам.

2. Определяются нормали в вершинах путем усреднения нормалей по всем полигональным граням, которым принадлежит вершина (рис 6.3).

2.

3. Рис. 6.3. Нормали к вершинам: v=(1 +2 +3 +4 +v)/4

4.

5.

3. Используя нормали в вершинах и применяя произвольный метод закраски, вычисляются значения интенсивности в вершинах.

4. Каждый многоугольник закрашивается путем линейной интерполяции значений интенсивностей в вершинах сначала вдоль каждого ребра, а затем и между ребрами вдоль каждой сканирующей строки (рис. 6.4).

7.

8. Рис. 6.4. Интерполяция интенсивностей

9.

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

Для цветных объектов отдельно интерполируется каждая из компонент цвета.

28) Закраска Фонга.

Закраска Фонга требует больших вычислительных затрат, однако она позволяет разрешить многие проблемы метода Гуро. При закраске Гуро вдоль сканирующей строки интерполируется значение интенсивности, а при закраске Фонга - вектор нормали. Затем он используется в модели освещения для вычисления интенсивности пиксела. При этом достигается лучшая локальная аппроксимация кривизны поверхности и, следовательно, получается более реалистичное изображение. В частности, правдоподобнее выглядят зеркальные блики.

При закраске Фонга аппроксимация кривизны поверхности производится сначала в вершинах многоугольников путем аппроксимации нормали в вершине. После этого билинейной интерполяцией вычисляется нормаль в каждом пикселе. Например, снова обращаясь к рис. 11.10, получаем нормаль в Q линейной интерполяцией междуAи B, вR- междуBиCи, наконец, вP- междуQиR. Таким образом:

где

u=AQ/AB, w=BR/BC, t=QP/QR.

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

где индексы 1 и 2 указывают на расположение пискелов на строке.

На рис. 11.12 сравниваются однотонная закраска (слева), закраска Гуро (в центре), Фонга (справа). Модель освещения для левого и среднего торов включает рассеянный свет и диффузное отражение (уравнение (11.1)), а для правого - также зеркальное отражение, благодаря которому появляются блики (уравнение (11.5) с d=0, K=1). На рис. 11.13 сравниваются зеркальные блики при закраске Гуро и более реалистичной закраске Фонга.

Рис. 11.12. Сравнение методов закраски: слева - однотонная, в центре - Гуро, справа - Фонга.

a b

Рис. 11.13. Сравнение зеркальных бликов: (а) закраска Гуро, (b) Фонга.

Хотя метод Фонга устраняет большинство недостатков метода Гуро, он тоже основывается на линейной интерполяции. Поэтому в местах разрыва первой производной интенсивности заметен эффект полос Маха, хотя и не такой сильный, как при закраске Гуро. Однако, как показал Дафф, иногда этот эффект проявляется сильнее у метода Фонга, например для сфер. Кроме того, оба метода могут привести к ошибкам при изображении невыпуклых многоугольников, например, таких, как на рис. 11.14. Первая сканирующая строка использует данные из вершин QRS, а вторая, лежащая ниже, берет также данные вершины P. Это может нарушить непрерывность закраски.

Рис. 11.14. Нарушение непрерывности закраски для невыпуклого многоугольника.

Также возникают трудности, когда любой из этих методов применяется при создании последовательности кинокадров. Например, закраска может значительно изменяться от кадра к кадру. Это происходит из-за того, что правило закраски зависит от поворотов, а обработка ведется в пространстве изображения. Поэтому, когда от кадра к кадру меняется ориентация объекта, его закраска (цвет) тоже изменяется, причем достаточно заметно. Дафф предлагает метод закраски Гуро и Фонга, инвариантный относительно поворота.

Соседние файлы в предмете Компьютерная Графика