Окружающая окклюзия

В 3D-компьютерной графике , моделировании и анимации , окружающая окклюзия — это техника затенения и рендеринга используемая для расчета того, насколько каждая точка сцены подвергается воздействию окружающего освещения . Например, внутренняя часть трубки обычно более закрыта (и, следовательно, темнее), чем открытые внешние поверхности, и становится темнее, чем глубже проникаешь внутрь трубки.
Окружающую окклюзию можно рассматривать как значение доступности, которое рассчитывается для каждой точки поверхности. [1] В сценах с открытым небом это делается путем оценки количества видимого неба для каждой точки, тогда как в помещениях учитываются только объекты в пределах определенного радиуса, а стены считаются источником окружающего света. В результате получается рассеянный , ненаправленный эффект затенения, который не отбрасывает четких теней, но затемняет закрытые и защищенные области и может повлиять на общий тон визуализированного изображения. Его часто используют в качестве эффекта постобработки .
В отличие от локальных методов, таких как затенение Фонга , Ambient occlusion — это глобальный метод, означающий, что освещение в каждой точке является функцией другой геометрии сцены. Однако это очень грубое приближение к полному глобальному освещению . Внешний вид, достигаемый только за счет фоновой окклюзии, аналогичен тому, как объект может выглядеть в пасмурный день.
Первый метод, позволивший имитировать Ambient occlusion в реальном времени, был разработан научно-исследовательским отделом Crytek ( CryEngine 2 ). [2] С выпуском оборудования с возможностью трассировки лучей в реальном времени ( серия GeForce 20 ) компанией Nvidia в 2018 году, трассировка лучей окружающей среды (RTAO) стала возможной в играх и других приложениях реального времени. [3] Эта функция была добавлена в Unreal Engine в версии 4.22. [4]
Реализация [ править ]
В отсутствие аппаратной трассировки лучей окружающего затенения приложения реального времени , такие как компьютерные игры, могут использовать методы окружающего затенения экранного пространства (SSAO), такие как фоновое затенение на основе горизонта, включая HBAO, и истинное затенение окружающего пространства (GTAO) в качестве более быстрое приближение истинной фоновой окклюзии с использованием глубины каждого пикселя , а не геометрии сцены, для формирования карты фоновой окклюзии .
Окружающая окклюзия связана с затенением доступности, которое определяет внешний вид на основе того, насколько легко к поверхности могут прикоснуться различные элементы (например, грязь, свет и т. д.). Он был популяризирован в производстве анимации благодаря своей относительной простоте и эффективности.
Модель затенения Ambient Occlusion обеспечивает лучшее восприятие трехмерной формы отображаемых объектов. Это было показано в статье, в которой авторы сообщают о результатах перцепционных экспериментов, показывающих, что различение глубины при рассеянном равномерном освещении неба превосходит то, что предсказывает модель прямого освещения. [5]
Окклюзия в какой-то момент на поверхности с нормальным можно вычислить путем интегрирования функции видимости по полусфере относительно проецируемого телесного угла:
где это функция видимости в , определяемый как ноль, если закупоривается в направлении и один иначе, и - бесконечно малый шаг телесного угла переменной интегрирования . На практике для аппроксимации этого интеграла используются различные методы: возможно, самый простой способ — использовать метод Монте-Карло , отбрасывая лучи из точки и тестирование на пересечение с другой геометрией сцены (т.е. приведение лучей ). Другой подход (более подходящий для аппаратного ускорения) — визуализировать представление из растрируя . черную геометрию на белом фоне и взяв (косинусно-взвешенное) среднее значение растеризованных фрагментов Этот подход является примером подхода «сбор» или «наизнанку», тогда как другие алгоритмы (например, окружающая окклюзия на карте глубины) используют методы «рассеяния» или «снаружи внутрь».
В дополнение к значению фоновой окклюзии, вектор «изогнутой нормали» часто генерируется, который указывает на среднее направление закупоренных образцов. Изогнутую нормаль можно использовать для поиска падающего излучения на карте окружающей среды и приближенного освещения на основе изображения . Однако в некоторых ситуациях направление изогнутой нормали искажает доминирующее направление освещения, например:

В этом примере свет может достигать точки p только с левой или правой стороны, но изогнутая нормаль указывает на среднее значение этих двух источников, которое направлено непосредственно к препятствию.
Варианты [ править ]
- Окклюзия экранного пространства (SSAO)
- Направленная окклюзия экранного пространства (SSDO)
- Окружающая окклюзия с трассировкой лучей (RTAO)
- Окружающая окклюзия высокого разрешения (HDAO)
- Ambient Occlusion+ на основе горизонта (HBAO)
- Алхимия Ambient Occlusion (AAO)
- Окружающая окклюзия на основе угла (ABAO)
- Предварительно запеченная Ambient Occlusion (PBAO)
- Воксельная ускоренная окружающая окклюзия (VXAO)
- Ambient Occlusion на основе Ground Truth (GTAO) [6]
Признание [ править ]
В 2010 году Хайден Лэндис, Кен Макгоф и Хилмар Кох были награждены премией Научно-технической академии за свою работу над рендерингом фоновой окклюзии. [7]
См. также [ править ]
- Глобальное освещение
- Фотонное картирование
- Радиосити
- Трассировка лучей
- Рендеринг в расширенном динамическом диапазоне
Ссылки [ править ]
- ^ Миллер, Гэвин (1994). «Эффективные алгоритмы локального и глобального затенения доступности». Материалы 21-й ежегодной конференции «Компьютерная графика и интерактивные технологии» . стр. 319–326.
- ^ «AMBIENT OCCLUSION: РАСШИРЕННОЕ РУКОВОДСТВО ПО ЕГО АЛГОРИТМАМ И ИСПОЛЬЗОВАНИЮ В VR» . ОРВИлаб . Проверено 26 ноября 2018 г.
- ^ Окружающая окклюзия с трассировкой лучей . Нвидиа. Архивировано из оригинала 12 декабря 2021 г.
- ^ «В Unreal Engine добавлена поддержка трассировки лучей DX12» . ЭкстримТех .
- ^ Лангер, М.С.; Х. Х. Бюлтхофф (2000). «Дискриминация глубины от затенения при рассеянном освещении». Восприятие . 29 (6): 649–660. CiteSeerX 10.1.1.69.6103 . дои : 10.1068/p3060 . ПМИД 11040949 . S2CID 11700764 .
- ^ «Практические стратегии в реальном времени для точной непрямой окклюзии» (PDF) .
- ↑ Оскар 2010: Научно-технические награды , Путеводитель по альтернативным фильмам , 7 января 2010 г.