Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Пример отображения отражения

В компьютерной графике , отображение окружающей среды , [1] [2] [3] или отражения отображения , является эффективным на основе образа освещения методом для аппроксимации внешнего вида отражающей поверхности с помощью предварительно вычисленных текстуры . Текстура используется для хранения изображения удаленного окружения, окружающего визуализированный объект.

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

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

Однако в большинстве случаев отображаемое отражение является лишь приближением к реальному отражению. Картирование окружения основывается на двух предположениях, которые редко бывают выполнены:

  1. Все сияние, падающее на затеняемый объект, исходит с бесконечного расстояния. Когда это не так, отражение близлежащей геометрии появляется не в том месте на отраженном объекте. В этом случае параллакс в отражении не наблюдается.
  2. Закрашиваемый объект выпуклый , так что он не содержит взаимных отражений. Когда это не так, объект не появляется в отражении; только окружающая среда делает.

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

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

Типы [ править ]

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

Карта сфер представляет собой сферу падающего освещения, как если бы она была видна в отражении отражающей сферы через ортогональную камеру. Изображение текстуры можно создать, аппроксимируя эту идеальную настройку, или используя объектив «рыбий глаз», или путем предварительного рендеринга сцены со сферическим отображением.

Сферическое отображение страдает ограничениями, которые снижают реалистичность получаемых изображений. Поскольку сферические карты хранятся как азимутальные проекции окружающей среды, которую они представляют, резкая точка сингулярности ( эффект « черной дыры ») видна в отражении на объекте, где цвета текселей на краю карты или рядом с ним искажаются из-за недостаточное разрешение для точного представления точек. Сферическое отображение также тратит впустую пиксели, которые находятся в квадрате, но не в сфере.

Артефакты сферического картирования настолько серьезны, что они эффективны только для точек обзора, близких к точке обзора виртуальной ортогональной камеры.

Отображение куба [ править ]

Диаграмма, изображающая кажущееся отражение, обеспечиваемое отображением куба. Карта фактически проецируется на поверхность с точки зрения наблюдателя. Блики, которые при трассировке лучей будут обеспечиваться путем трассировки луча и определения угла, созданного с помощью нормали, можно «обмануть», если они вручную закрашены в поле текстуры (или если они уже появляются там, в зависимости от того, как была получена карта текстуры. ), откуда они будут проецироваться на отображаемый объект вместе с остальными деталями текстуры.
Пример трехмерной модели с кубическим отражением

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

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

Отображение HEALPix [ править ]

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

История [ править ]

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

Джин Миллер экспериментировал со сферическим картированием окружающей среды в 1982 году в MAGI Synthavision .

Вольфганг Гейдрих представил Paraboloid Mapping в 1998 году. [6]

Эмиль Праун представил Octahedron Mapping в 2003 году. [7]

Мауро Штайгледер представил Pyramid Mapping в 2005 году. [8]

Тянь-Цинь Вонг и др. представил существующее отображение HEALPix для рендеринга в 2006 году. [5]

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

  • Skybox (видеоигры)

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

  1. ^ http://www.pearsonhighered.com/samplechapter/0321194969.pdf
  2. ^ http://web.cse.ohio-state.edu/~whmin/courses/cse5542-2013-spring/17-env.pdf
  3. ^ http://www.ics.uci.edu/~majumder/VC/classes/BEmap.pdf
  4. ^ http://seblagarde.wordpress.com/2012/09/29/image-based-lighting-approaches-and-parallax-corrected-cubemap/
  5. ^ a b Тянь-Цинь Вонг, Лян Ван, Чи-Синг Люн и Пинг-Ман Лам. Отображение окружающей среды в реальном времени с помощью равнопроцентной сферической четырехугольной карты , Shader X4: Lighting & Rendering, Charles River Media, 2006.
  6. ^ Гейдрих, В., и Х.-П. Зайдель. "Независимые от вида карты среды". Семинар Eurographics по графическому оборудованию 1998, стр. 39–45.
  7. ^ Эмиль Праун и Хьюг Хоппе. «Сферическая параметризация и переплетение». Транзакции ACM по графике, 22 (3): 340–349, 2003.
  8. ^ Mauro Steigleder. «Карандашный легкий транспорт». Диссертация представлена ​​в Университете Ватерлоо, 2005 г.

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

  • История картографирования Отражение от Пола Debevec
  • Картографирование среды бумажного куба от NVIDIA
  • Аппроксимация отражающих и прозрачных объектов с картами окружения