Помощь в написании студенческих работ
Антистрессовый сервис

Закрашивание. 
Компьютерная графика

РефератПомощь в написанииУзнать стоимостьмоей работы

Существуют различные методы вывода освещенных треугольников. Самым простым из них является закрашивание Гуро. При его использовании освещенность вычисляется в вершинах треугольника, например по указанной ранее формуле для модели Фонга или Блинна — Фонга. Затем полученные значения освещенности интерполируются на весь треугольник. Поскольку при этом весь расчет освещенности выполняется только… Читать ещё >

Закрашивание. Компьютерная графика (реферат, курсовая, диплом, контрольная)

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

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

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

Рассмотрим равносторонний треугольник, над центром которого на небольшой высоте расположен источник света. Тогда для каждой из вершин этого треугольника вектор на источник света будет почти перпендикулярен нормали к этому треугольнику, поэтому освещение в вершинах будет практически равно нулю. Но при билинейной интерполяции значение внутри треугольника не может быть больше значений в вершинах, поэтому весь треугольник будет иметь крайне небольшое освещение, в том числе и в точке, расположенной прямо под источником света, где освещение должно быть достаточно большим.

Метод закрашивания Фонга лишен этого недостатка, но он является гораздо более затратным с точки зрения вычислительных ресурсов. При использовании этого метода интерполируется не само значение освещенности, а только векторы, которые нужны для расчета освещенности (/, v, г, И).

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

Данный эффект позволяет достаточно просто создать эффект микрорельефа на поверхности без необходимости усложнения выводимой геометрии. Вместо этого для каждого треугольника задается дополнительная текстура — так называемая карта нормалей. Эта текстура задает для каждой точки треугольника свой вектор нормали, который и используется при расчете освещенности. Детально данный эффект, а также реализация повершинного и попикельного освещения с помощью шейдеров рассматриваются в гл. 13.

Показать весь текст
Заполнить форму текущей работой