Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Сфера без рельефного отображения (слева). Карта рельефа, применяемая к сфере (в центре). Сфера с примененной картой рельефа (справа) имеет пятнистую поверхность, напоминающую апельсин . Карты рельефа достигают этого эффекта, изменяя то, как освещенная поверхность реагирует на свет, без изменения размера или формы поверхности.

Bump mapping [1] - это метод наложения текстуры в компьютерной графике для имитации неровностей и морщин на поверхности объекта. Это достигается за счет изменения нормалей поверхности объекта и использования возмущенной нормали при расчетах освещения. В результате получается явно неровная поверхность, а не гладкая, хотя поверхность нижележащего объекта не изменяется. Рельефное отображение было введено Джеймсом Блинном в 1978 г. [2]

Отображение нормалей - это наиболее распространенный вариант отображения рельефа. [3]

Основы отображения рельефа [ править ]

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

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

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

Существуют также расширения, которые изменяют другие особенности поверхности в дополнение к увеличению ощущения глубины. [ требуется пояснение ] Отображение параллакса - одно из таких расширений.

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

Методы [ править ]

Есть два основных метода выполнения карт рельефа. Первый использует карту высот для имитации смещения поверхности, приводящей к измененной нормали. Это метод, изобретенный Блинном [2], и обычно его называют рельефным отображением, если не указано иное. Шаги этого метода резюмируются следующим образом.

Перед выполнением расчета освещения для каждой видимой точки (или пикселя ) на поверхности объекта:

  1. Найдите высоту на карте высот, которая соответствует положению на поверхности.
  2. Вычислите нормаль к поверхности карты высот, обычно используя метод конечных разностей .
  3. Объедините нормаль к поверхности из шага 2 с истинной («геометрической») нормалью к поверхности, чтобы объединенная нормаль указывала в новом направлении.
  4. Рассчитайте взаимодействие новой «неровной» поверхности с источниками света в сцене, используя, например, модель отражения Фонга .

В результате поверхность имеет реальную глубину. Алгоритм также обеспечивает изменение внешнего вида поверхности по мере перемещения источников света в сцене.

Другой метод - указать карту нормалей, которая содержит измененную нормаль для каждой точки на поверхности напрямую. Поскольку нормаль указывается напрямую, а не выводится из карты высот, этот метод обычно приводит к более предсказуемым результатам. Это упрощает работу художников, что делает его наиболее распространенным методом отображения рельефа на сегодняшний день. [3]

Методы отображения рельефа в реальном времени [ править ]

Пример поддельного отображения рельефа в реальном времени.
Слева:
  1. растровое изображение поверхности, намеренно размытое,
  2. источник растрового изображения,
  3. эффект отображения рельефа с орбитальной траекторией источника света .

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

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

См. Также [ править ]

  • Поле расстояния
  • Смещение поверхности
  • Приветливый

Ссылки [ править ]

  1. ^ «Рельеф и отображение окружающей среды» (PDF) . ics.uci.edu .
  2. ^ a b Блинн, Джеймс Ф. "Моделирование морщинистых поверхностей" , Компьютерная графика, Vol. 12 (3), стр. 286-292 SIGGRAPH -ACM (август 1978 г.)
  3. ^ a b Миккельсен, Мортен (2008). «Повторное моделирование морщинистых поверхностей» (PDF) . п. 7 (раздел 2.2). Архивировано (PDF) из оригинала 26 мая 2019 года . Проверено 5 августа 2011 .
  4. ^ Синтез карты рельефа в реальном времени , Ян Каутц 1 , Вольфганг Хайдрихи 2 и Ханс-Петер Зайдель 1 , ( 1 Институт информатики Макса Планка, 2 Университет Британской Колумбии)

Внешние ссылки [ править ]

  • Затенение выпуклостей для объемных текстур , Max, NL, Becker, BG, Computer Graphics and Applications, IEEE, июль 1994 г., том 14, выпуск 4, страницы 18-20, ISSN 0272-1716
  • Простое создание векторов на пиксель шкалы серого для работы карты рельефа и т. Д.
  • Пример отображения рельефа ( Java-апплет )