Отправьте статью сегодня! Журнал выйдет ..., печатный экземпляр отправим ...
Опубликовать статью

Молодой учёный

Техника Parallax Mapping для создания рельефных поверхностей

Информационные технологии
Препринт статьи
20.06.2026
Поделиться
Аннотация
В статье рассматривается семейство техник Parallax Mapping, применяемых для создания иллюзии объёмного рельефа поверхности без увеличения числа полигонов. Описаны предпосылки появления метода, принципы работы базового Parallax Mapping и Parallax Occlusion Mapping (POM), их характерные артефакты и способы устранения.
Библиографическое описание
Квилюнас, И. М. Техника Parallax Mapping для создания рельефных поверхностей / И. М. Квилюнас. — Текст : непосредственный // Молодой ученый. — 2026. — № 25 (628). — URL: https://moluch.ru/archive/628/138442.


The article discusses the Parallax Mapping family of techniques used to create the illusion of volumetric surface relief without increasing the polygon count. The background of the method, the operating principles of basic Parallax Mapping and Parallax Occlusion Mapping (POM) are described, along with their characteristic artifacts and mitigation strategies.

Keywords : parallax mapping, relief texturing, height map, tangent space, POM, bump mapping, shader.

Введение

Детализированная геометрия поверхностей — один из ключевых факторов визуального реализма трёхмерной сцены. Однако увеличение числа полигонов для передачи мелкого рельефа — трещин, выбоин, тиснения, каменной кладки — резко повышает нагрузку на конвейер обработки вершин и приводит к высокому расходу видеопамяти. Для решения этой проблемы в реалтаймовом рендеринге применяется ряд техник, имитирующих объём поверхности средствами фрагментного шейдера [1, с. 484]. Техника Parallax Mapping стала важным шагом на пути от примитивного Normal Mapping к полноценной имитации рельефа с самозатенением и параллаксным смещением [2]. Цель данной статьи — последовательно изложить эволюцию методов семейства Parallax Mapping и провести их сравнительный анализ.

1. Предшественники: Normal Mapping и Bump Mapping

Bump Mapping, предложенный Джеймсом Блинном в 1978 году, стал первым методом имитации рельефа без изменения геометрии [3, с. 2]. Метод возмущает нормаль поверхности перед вычислением освещения, используя карту высот (height map). Это создаёт убедительную иллюзию рельефа при фронтальном взгляде, однако силуэт объекта остаётся плоским, а боковое скольжение взгляда немедленно разрушает иллюзию.

Normal Mapping — хранит возмущённые нормали непосредственно в текстуре в пространстве касательных (tangent space), что позволяет эффективно использовать данные, запечённые в высокополигональной модели [1, с. 486]. Normal Mapping стал индустриальным стандартом с начала 2000-х годов и по-прежнему широко используется, однако смещение текстурных координат при косом взгляде отсутствует, вследствие чего рельеф «скользит» вместе с плоской поверхностью.

2. Базовый Parallax Mapping

Ключевая идея Parallax Mapping состоит в смещении текстурных координат в зависимости от угла взгляда и высоты поверхности в данной точке, что создаёт эффект параллакса — кажущегося смещения рельефных деталей при изменении ракурса, характерного для реальных объёмных поверхностей [2].

Алгоритм работает следующим образом. В фрагментном шейдере вычисляется вектор взгляда V в пространстве касательных. Из карты высот считывается значение h в исходных координатах текстуры. Затем координаты смещаются по формуле: UV′ = UV + (V.xy / V.z) × h × scale, где scale — масштабный коэффициент глубины рельефа [4, с. 3]. Все последующие операции — выборка диффузной текстуры, нормалей, расчёт освещения — выполняются по смещённым координатам UV′.

Метод крайне дёшев в реализации (добавляет лишь одну выборку текстуры и несколько арифметических операций) и хорошо работает при небольшой глубине рельефа и умеренных углах взгляда. Однако при больших значениях scale и пологих углах смещение становится чрезмерным и текстура «уплывает», что является главным артефактом базового метода.

3. Parallax Occlusion Mapping

Parallax Occlusion Mapping (POM) устраняет ступенчатость с помощью линейной интерполяции между последним «воздушным» и первым «заглублённым» слоями, что даёт субпиксельно точную оценку точки пересечения [4, с. 7]. Дополнительно POM реализует самозатенение: из найденной точки трассируется вторичный луч в направлении источника света; если на его пути встречается рельеф, точка находится в тени. Это кардинально повышает реалистичность, поскольку глубокие борозды и выступы отбрасывают тени непосредственно на прилегающую поверхность.

POM является наиболее качественным методом семейства и применяется в высокобюджетных проектах для текстурирования каменной кладки, кирпича, кожи, гравия и других материалов с выраженным рельефом. Стоимость метода существенно выше базового Parallax Mapping, однако значительно ниже, чем у тесселяции с displacement mapping при сопоставимом визуальном результате [1, с. 491].

Заключение

Семейство техник Parallax Mapping представляет собой эффективный инструментарий имитации объёмного рельефа поверхностей в реалтаймовом рендеринге. Эволюция от базового смещения текстурных координат к итеративному поиску пересечения луча и субпиксельной интерполяции в POM позволила многократно повысить качество эффекта при умеренном росте вычислительных затрат. Техника нашла широкое применение в современных игровых движках: Unreal Engine поддерживает POM через параметр Parallax Occlusion Mapping Depth в материальном редакторе, Unity — через пакет HDRP с опцией Pixel Displacement. Понимание принципов работы методов семейства является необходимой базой для специалистов в области технического художественного оформления и разработки шейдеров.

Литература:

  1. Akenine-Möller T., Haines E., Hoffman N. Real-Time Rendering. — 4th ed. — CRC Press, 2018. — 1198 с.
  2. Kaneko T. et al. Detailed Shape Representation with Parallax Mapping // Proceedings of ICAT. — 2001. — С. 205–208.
  3. Blinn J. F. Simulation of Wrinkled Surfaces // ACM SIGGRAPH Computer Graphics. — 1978. — Vol. 12, № 3. — С. 286–292.
  4. de Vries J. Parallax Mapping [Электронный ресурс] // Learn OpenGL. — URL: https://learnopengl.com/Advanced-Lighting/Parallax-Mapping (дата обращения: 10.05.2025).
  5. McBain M. Steep Parallax Mapping [Электронный ресурс] // NVIDIA Developer. — 2005. — URL: https://developer.nvidia.com/gpugems/gpugems3/part-i-geometry/chapter-4-next-generation-speedtree-rendering (дата обращения: 12.05.2026).
  6. Welsh T. Parallax Mapping with Offset Limiting // Infiscape Technical Report. — 2004. — С. 1–9.
  7. Epic Games. Parallax Occlusion Mapping [Электронный ресурс] // Unreal Engine Documentation. — URL: https://dev.epicgames.com/documentation/en-us/unreal-engine/parallax-occlusion-mapping-in-unreal-engine (дата обращения: 09.05.2026).
Можно быстро и просто опубликовать свою научную статью в журнале «Молодой Ученый». Сразу предоставляем препринт и справку о публикации.
Опубликовать статью
Молодой учёный №25 (628) июнь 2026 г.
📄 Препринт
Файл будет доступен после публикации номера

Молодой учёный