Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпора переделанная.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
581.63 Кб
Скачать

Методы повышения качества изображения при обратной трассировке лучей Текстурные карты и свойства материалов. Работа с растровыми картами (bmp, png, jpeg)

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

  • Текстурная карта (Bitmap). Обычный растровый рисунок, загружаемый из файла.

  • Шахматная доска. Процедурная текстура, состоящая из двух цветов, расположенных в шахматном порядке.

  • Шум Перлина (сглаженный разночастотный шум). Позволяет эффективно имитировать материалы природы (облака, дерево, мрамор и т.д.). За дополнительной информацией обращайтесь к разделу ссылки.

Отображение шероховатости (bump-mapping)

Данная техника позволяет без геометрического изменения поверхности и, как следствие, не сильно замедляя трассировку, получить эффект шероховатости. У материала появляется еще одна карта – карта высоты (bump map). В зависимости от яркости точки, условно "поднимаются" точки на поверхности. Особенность заключается в том, что сама поверхность не изменяется, а меняется только нормаль в точке. К нормали прибавляются небольшие вектора: чем больше разность высот между точками, тем больше нужен прибавляемый вектор. Из-за этого, с помощью такой техники невозможно получить тени от возвышенностей, но для имитации мелких деталей она подходит идеально.

Сглаживание (antialiasing)

В задачах компьютерной графики зачастую приходится решать проблему сглаживания острых краев линий (aliasing). Дело в том, что большинство существующих алгоритмов рассматривает пиксель на экране не как область, обладающую площадью, а как математическую точку. В частности, лучи в обычной трассировке не имеют объема и, поэтому не могут передать плавный переход на границе полигонов. У решения этой проблемы существуют по крайней мере два пути решения: экстенсивный и интенсивный:).

Первый, увеличение числа трассируемых лучей через точку на экране, с дальнейшим нахождением среднего, или среднего с весами (семплинг – sampling, supersampling). Например, вместо одного луча, пять, девять, или даже двадцать пять. Минус метода - замедление работы в соответственное число раз. Чтобы от этого избавится можно трассировать дополнительные лучи только в тех точках, цвет которых сильно отличается от четырех соседних. Получится так называемый адаптивный мультисемплинг (adaptive sampling, multisampling). Обычно замедление не превышает двух раз.

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

Кубические сплайны

Для описания сложных поверхностей часто используют сплайны. Сплайн – это специальная функция для аппроксимации отдельных фрагментов поверхности. Несколько сплайнов образуют модель сложной поверхности. Иными словами, сплайн – это тоже поверхность, но такая, для которой можно достаточно просто вычислять координаты ее точек. В трехмерной графике обычно используют кубические сплайны по двум основным причинам:

– третья степень – наименьшая из степеней, позволяющих описывать любую форму;

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

Сплайны, как правило, задают параметрически.

Рассмотрим одну из разновидностей сплайнов – сплайн Безье. В обобщенной форме (степени m*n):

где Pij – опорные точки-ориентиры, 0  s  1, 0  t  1, Cmi и Cnj – коэффициенты бинома Ньютона, которые рассчитываются по формуле

Кубический сплайн Безье соответствует значениям m=3, n=3. Для его определения необходимо 16 точек-ориентиров Pij; коэффициенты Cmi и Cnj равны 1, 3, 3, 1 при i, j = 0, 1, 2, 3.

46

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]