Bing Maps
- 1 year ago
- 0
- 0
Parallax occlusion mapping (сокращённо POM ) — программная техника (методика) в трёхмерной компьютерной графике , усовершенствованный вариант техники « parallax mapping ». Parallax occlusion mapping используется для процедурного создания трёхмерного описания текстурированной поверхности с использованием карт смещения () вместо непосредственного генерирования новой геометрии. Методику «Parallax occlusion mapping» условно можно назвать « 2.5D », так как она позволяет добавлять трёхмерную сложность в текстуры, не создавая реальные трёхмерные графические структуры. В отличие от более простых методик рельефного текстурирования вроде bump mapping , normal mapping или parallax mapping , данная техника позволяет корректное определение перспективы и самозатенение в реальном времени, не требуя исполнения проходов рендеринга графического процессора для создания такого же эффекта с геометрическими вычислениями.
Первая работа, посвященная данной методике, появилась в 2004 году на «ShaderX3», её авторами были Зоя Броули ( англ. Zoe Brawley) и Наталия Татарчук ( англ. Natalya Tatarchuk). Наталия Татарчук провела презентацию технологии на мероприятии SIGGRAPH 2005, которое проводилось в Лос-Анджелесе в конце лета 2005 года. Далее техника «Parallax occlusion mapping» использовалась компанией ATI в демонстрации «Toy Shop Demo» для презентации возможностей третьей версии шейдерной модели в новейшей на то время видеокарте Radeon X1800.
Первым игровым движком, в котором использовался Parallax occlusion mapping, стал CryEngine 2 от немецкого разработчика Crytek , который впервые использовался в компьютерной ПК-игре Crysis 2007 года выпуска. Также эта технология очень интенсивно используется в популярном графическом бенчмарке 3DMark Vantage от компании Futuremark .
Методика «Parallax occlusion mapping» может использоваться в интерактивной компьютерной графике реального времени ( графические движки для компьютерных игр и другие интерактивные приложения), для офлайн-рендеринга () и для генерации отдельных стереоскопических изображений.
Parallax Occlusion Mapping является усовершенствованной и в то же время одной из наиболее вычислительно сложных разновидностей Parallax Mapping. «Parallax Occlusion Mapping» полностью обрабатывается и исполняется на графическом процессоре ( англ. GPU) видеокарты как пиксельный шейдер. Фактически представляет собой форму локального рейтрейсинга (трассировка лучей) в пиксельном шейдере. Трассировка лучей используется для определения высот и учёта видимости текселей . Иными словами, данный метод может позволить создавать еще большую глубину рельефа при небольших затратах полигонов и применении сложной геометрии. Недостаток метода — невысокая детализация силуэтов и граней. Реализовать Parallax Occlusion Mapping возможно в рамках функционала API DirectX 9 SM3 как пиксельный шейдер, однако для получения оптимальной производительности видеокарта должна обеспечивать надлежащий уровень скорости исполнения операций ветвления в пиксельном шейдере.