Окружающий occlusion

редактировать
Техника затенения и рендеринга компьютерной графики Карта окружающего окклюзии (среднее изображение) для этой сцены затемняет только самые внутренние углы углов.

В компьютерной 3D-графике, моделировании и анимации, ambient occlusion - это затенение и рендеринг. метод, используемый для расчета степени экспонирования каждой точки сцены до Двустороннее освещение. Например, внутренняя часть трубки обычно более закрыта (и, следовательно, темнее), чем обнаженные внешние поверхности, и становится темнее, чем глубже погружается в трубку.

Ambient occlusion можно рассматривать как значение доступности, которое рассчитывается для каждой точки поверхности. В сценах с открытым небом это делается путем оценки количества видимого неба для каждой точки, тогда как в помещениях учитываются только объекты в пределах определенного радиуса, а стены считаются источником окружающего света. Результатом является диффузный, ненаправленный эффект затенения, который не отбрасывает четких теней, но затемняет замкнутые и защищенные области и может повлиять на общий тон визуализированного изображения. Часто используется как эффект.

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

Первый метод, позволяющий моделировать окружающее окклюзию в реальном времени, был разработан отделом исследований и разработок Crytek (CryEngine 2 ). С выпуском оборудования с возможностью трассировки лучей в реальном времени (GeForce 20 series ) от Nvidia в 2018 году трассировка лучей ambient occlusion (RTAO) стала возможной в играх. и другие приложения реального времени. Эта функция была добавлена ​​в Unreal Engine с версией 4.22.

Содержание
  • 1 Реализация
    • 1.1 Варианты
  • 2 Распознавание
  • 3 См. Также
  • 4 Ссылки
Реализация
Файл: Efecto de la oclusión ambiental.ogv Воспроизвести медиа Включена 3D-анимация окружающей окклюзии на анимации справа.

При отсутствии аппаратной трассировки лучей внешней окклюзии, в реальном времени приложения, такие как компьютерные игры, могут использовать ambient occlusion в экранном пространстве (SSAO) или ambient occlusion на основе горизонта (HBAO) в качестве более быстрого приближения к истинному ambient occlusion, используя глубина пикселя, а не геометрия сцены для формирования окружающего затенения карта.

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

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

Окклюзия A p ¯ { \ displaystyle A _ {\ bar {p}}}A_ \ bar p в точке p ¯ {\ displaystyle {\ bar {p}}}\ bar p на поверхности с нормалью n ^ {\ displaystyle {\ hat {n}}}{\ hat {n}} может быть вычислено путем интегрирования функции видимости по полушарию Ω {\ displaystyle \ Omega}\ Omega относительно проецируемого телесный угол:

A p ¯ = 1 π ∫ Ω V p ¯, ω ^ (n ^ ⋅ ω ^) d ⁡ ω {\ displaystyle A _ {\ bar {p}} = {\ frac {1} {\ pi}} \ int _ {\ Omega} V _ {{\ bar {p}}, {\ hat {\ omega}}} ({\ hat {n}} \ cdot {\ hat {\ omega}}) \, \ operatorname {d} \ omega}A_ \ bar p = \ frac {1} {\ pi} \ int _ {\ Omega} V _ {\ bar p, \ hat \ omega} (\ hat n \ cdot \ hat \ omega) \, \ operatorname {d} \ omega

где V p ¯, ω ^ {\ displaystyle V _ {{\ bar {p}}, {\ hat {\ omega}}}}V _ {\ bar p, \ hat \ omega} - функция видимости в p ¯ {\ displaystyle {\ bar {p}}}\ bar p , определенная равной нулю, если p ¯ {\ displaystyle {\ bar {p}}}\ bar p окклюзия Дед в направлении ω ^ {\ displaystyle {\ hat {\ omega}}}\ hat \ omega и в другом направлении, и d ⁡ ω {\ displaystyle \ operatorname {d} \ omega}\ operatorname {d} \ omega - бесконечно малый телесный угол шаг переменной интегрирования ω ^ {\ displaystyle {\ hat {\ omega}}}\ hat \ omega . Для аппроксимации этого интеграла на практике используются различные методы: возможно, самый простой способ - использовать метод Монте-Карло, направляя лучи из точки p ¯ {\ displaystyle {\ bar {p }}}\ bar p и проверка на пересечение с другой геометрией сцены (например, литье лучей ). Другой подход (более подходящий для аппаратного ускорения) - визуализация вида из p ¯ {\ displaystyle {\ bar {p}}}\ bar p путем растеризации черной геометрии на белом фоне. фон и взятие среднего (косинусно-взвешенного) растеризованных фрагментов. Этот подход является примером подхода «собирание» или «изнутри наружу», тогда как другие алгоритмы (такие как ambient occlusion на карте глубины) используют методы «рассеивания» или «снаружи внутрь».

В дополнение к значению внешней окклюзии часто создается вектор "изогнутой нормали" n ^ b {\ displaystyle {\ hat {n}} _ {b}}\ hat {n} _b , что указывает на среднее направление незаключенных образцов. Изогнутая нормаль может использоваться для поиска падающего сияния на карте окружающей среды для приблизительного освещения на основе изображения. Однако есть некоторые ситуации, в которых направление изогнутой нормали является неправильным представлением доминирующего направления освещения, например,

В этом примере изогнутая нормаль N b имеет неудачное направление, так как она указывает на перекрывающуюся поверхность.

В этом примере свет может достигать точки p только с левой или правой стороны, но изогнутая нормаль указывает на среднее значение этих двух источников, которое, к сожалению, направлено прямо к препятствию.

Варианты

SSAO
Окружающая окклюзия экранного пространства
SSDO
Направленная окклюзия экранного пространства
RTAO
Окружающая окклюзия с трассировкой лучей
HDAO
Окклюзия с высоким разрешением
HBAO +
Окклюзия на основе горизонта +
AAO
Окклюзия алхимии
ABAO
Окклюзия на основе угла
PBAO
Предварительно запеченная окружающая окклюзия
VXAO
Окклюзия, ускоренная вокселем
GTAO
Ambient Occlusion на основе наземной истины
Признание

В 2010 году Хайден Лэндис, Кен Макгоу и Хилмар Кох были награждены наградой научно-технической академии за свою работу по рендерингу окружающей окклюзии.

См. также
Ссылки
  1. ^Миллер, Гэвин (1994). «Эффективные алгоритмы затенения локальной и глобальной доступности». Материалы 21-й ежегодной конференции по компьютерной графике и интерактивной технике. С. 319–326.
  2. ^«ОКРУЖАЮЩАЯ ОККЛЮЗИЯ: РАСШИРЕННОЕ РУКОВОДСТВО ПО ЕГО АЛГОРИТМАМ И ИСПОЛЬЗОВАНИЮ В VR». ARVIlab. Проверено 26 ноября 2018.
  3. ^Окклюзия с трассировкой лучей. Nvidia.
  4. ^«Unreal Engine добавляет поддержку трассировки лучей DX12». ExtremeTech.
  5. ^Langer, M.S.; Х. Х. Буэлтхофф (2000). «Различение глубины от затемнения при рассеянном освещении». Восприятие. 29 (6): 649–660. CiteSeerX 10.1.1.69.6103. doi : 10.1068 / p3060. PMID 11040949.
  6. ^«Практические стратегии в реальном времени для точной косвенной окклюзии» (PDF).
  7. ^Оскар 2010: научно-технические награды, Руководство по альтернативным фильмам, 7 января, 2010
Последняя правка сделана 2021-06-10 16:47:08
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте