Отображение рельефа - это метод наложения текстуры в компьютерной графике для имитации неровностей и морщин на поверхности объекта. Это достигается за счет изменения нормалей поверхности объекта и использования возмущенной нормали во время расчетов освещения. В результате получается явно неровная поверхность, а не гладкая, хотя поверхность нижележащего объекта не изменяется. Отображение рельефа было введено Джеймсом Блинном в 1978 году.
Отображение нормалей является наиболее распространенным вариантом используемого отображения рельефа.
Отображение рельефа - это метод в компьютерной графике для создания визуализированной поверхности выглядят более реалистично, моделируя небольшие смещения поверхности. Однако, в отличие от отображения смещения, геометрия поверхности не изменяется. Вместо этого изменяется только нормаль к поверхности, как если бы поверхность была смещена. Затем измененная нормаль к поверхности используется для расчетов освещения (с использованием, например, модели отражения Фонга ), создавая видимость деталей вместо гладкой поверхности.
Отображение рельефа выполняется намного быстрее и требует меньше ресурсов для того же уровня детализации по сравнению с сопоставлением смещения, поскольку геометрия остается неизменной.
Существуют также расширения, которые изменяют другие элементы поверхности в дополнение к увеличению ощущения глубины. Отображение параллакса является одним из таких расширений.
Основным ограничением рельефного отображения является то, что оно нарушает только нормали поверхности, не изменяя саму нижележащую поверхность. Таким образом, силуэты и тени остаются неизменными, что особенно заметно для больших смоделированных смещений. Это ограничение можно преодолеть с помощью методов, включая отображение смещения, где к поверхности применяются выпуклости, или с помощью изоповерхности.
Есть два основных метода для выполнения отображения рельефа. Первый использует карту высот для моделирования смещения поверхности, дающей измененную нормаль. Это метод, изобретенный Блинном, и обычно его называют рельефным картированием, если не указано иное. Шаги этого метода резюмируются следующим образом.
Перед выполнением расчета освещения для каждой видимой точки (или пикселя ) на поверхности объекта:
В результате поверхность имеет реальную глубину. Алгоритм также обеспечивает изменение внешнего вида поверхности по мере перемещения источников света в сцене.
Другой метод - указать карту нормалей, которая содержит измененную нормаль для каждой точки на поверхности напрямую. Поскольку нормаль указывается напрямую, а не выводится из карты высот, этот метод обычно приводит к более предсказуемым результатам. Это упрощает работу художников, что делает его наиболее распространенным методом отображения рельефа на сегодняшний день.
3D-графика в реальном времени программисты часто используют разные техники для моделирования рельефного отображения с меньшими вычислительными затратами.
Один из типичных способов - использовать фиксированную геометрию, которая позволяет использовать нормаль поверхности карты высот почти напрямую. В сочетании с предварительно вычисленной поисковой таблицей для расчетов освещения этот метод может быть реализован с помощью очень простого и быстрого цикла, обеспечивающего полноэкранный эффект. Этот метод был обычным визуальным эффектом, когда впервые было введено отображение рельефа.
На Викискладе есть медиафайлы, связанные с Bump mapping. |