Parallax occlusion mapping

Реализация алгоритма Parallax occlusion mapping в бенчмарке 3DMark Vantage 2008 года. Данное изображение построено при помощи двух полигонов (треугольников), расположенных на одной плоскости. Все детали — горы, террасы, низины, водоёмы, искусственные сооружения, источники света и тени — реализованы при помощи POM в пиксельном шейдере.

Parallax occlusion mapping (сокращённо POM) — программная техника (методика) в трёхмерной компьютерной графике, усовершенствованный вариант техники «parallax mapping». Parallax occlusion mapping используется для процедурного создания трёхмерного описания текстурированной поверхности с использованием карт смещения (en:Displacement mapping) вместо непосредственного генерирования новой геометрии.[1] Методику «Parallax occlusion mapping» условно можно назвать «2.5D», так как она позволяет добавлять трёхмерную сложность в текстуры, не создавая реальные трёхмерные графические структуры. В отличие от более простых методик рельефного текстурирования вроде bump mapping, normal mapping или parallax mapping, данная техника позволяет корректное определение перспективы и самозатенение в реальном времени, не требуя исполнения проходов рендеринга графического процессора для создания такого же эффекта с геометрическими вычислениями.[2]

История создания и использование

Первая работа, посвященная данной методике, появилась в 2004 году на «ShaderX3», её авторами были Зоя Броули (англ. Zoe Brawley) и Наталия Татарчук (англ. Natalya Tatarchuk).[1] Наталия Татарчук провела презентацию технологии на мероприятии SIGGRAPH 2005, которое проводилось в Лос-Анджелесе в конце лета 2005 года.[3] Далее техника «Parallax occlusion mapping» использовалась компанией ATI в демонстрации «Toy Shop Demo» для презентации возможностей третьей версии шейдерной модели в новейшей на то время видеокарте Radeon X1800.[4]

Первым игровым движком, в котором использовался Parallax occlusion mapping, стал CryEngine 2 от немецкого разработчика Crytek, который впервые использовался в компьютерной ПК-игре Crysis 2007 года выпуска.[5] Также эта технология очень интенсивно используется в популярном графическом бенчмарке 3DMark Vantage от компании Futuremark.[6]

Методика «Parallax occlusion mapping» может использоваться в интерактивной компьютерной графике реального времени (графические движки для компьютерных игр и другие интерактивные приложения), для офлайн-рендеринга (редакторы трёхмерной графики) и для генерации отдельных стереоскопических изображений.[7]

Описание

Parallax Occlusion Mapping является усовершенствованной и в то же время одной из наиболее вычислительно сложных разновидностей Parallax Mapping. «Parallax Occlusion Mapping» полностью обрабатывается и исполняется на графическом процессоре (англ. GPU) видеокарты как пиксельный шейдер. Фактически представляет собой форму локального рейтрейсинга (трассировка лучей) в пиксельном шейдере. Трассировка лучей используется для определения высот и учёта видимости текселей. Иными словами, данный метод может позволить создавать еще большую глубину рельефа при небольших затратах полигонов и применении сложной геометрии. Недостаток метода — невысокая детализация силуэтов и граней. Реализовать Parallax Occlusion Mapping возможно в рамках функционала API DirectX 9 SM3 как пиксельный шейдер, однако для получения оптимальной производительности видеокарта должна обеспечивать надлежащий уровень скорости исполнения операций ветвления в пиксельном шейдере.[5]

Примечания

  1. 1 2 Brawley, Z., and Tatarchuk, N. 2004. Parallax Occlusion Mapping: Self-Shadowing, Perspective-Correct Bump Mapping Using Reverse Height Map Tracing. In ShaderX3: Advanced Rendering with DirectX and OpenGL, Engel, W., Ed., Charles River Media, pp. 135—154. https://books.google.ca/books?id=DgMSb_10l7IC&pg=PA135&dq=parallax+occlusion Архивная копия от 21 февраля 2015 на Wayback Machine
  2. Dynamic Parallax Occlusion Mapping with Approximate Soft Shadows — Tatarchuk Архивировано 8 сентября 2008 года.
  3. Sketches | Conference: SIGGRAPH 2005. Дата обращения: 8 мая 2009. Архивировано 21 февраля 2015 года.
  4. ATI Radeon X1800 Preview — TrustedReviews — TrustedReviews. Дата обращения: 8 мая 2009. Архивировано 15 января 2008 года.
  5. 1 2 Данил Гридасов. i3D-Quality — Под микроскопом — Апрель-май 2008 — DX9 vs DX10 в Crysis. iXBT.com (28 мая 2008). Дата обращения: 8 мая 2009. Архивировано из оригинала 30 мая 2013 года.
  6. Алексей Берилло. Futuremark 3DMark Vantage. iXBT.com (23 мая 2008). Дата обращения: 8 мая 2009. Архивировано из оригинала 10 декабря 2011 года.
  7. Erik Benerdal. Generating stereoscopic images with parallax occlusion mapping (англ.). Scalari.net (22 апреля 2008). Дата обращения: 8 мая 2009. Архивировано из оригинала 31 марта 2012 года.

Ссылки

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.