Трёхмерная (3D) компьютерная графика |
---|
Основы |
Основное применение |
Похожие темы |
Глобальное освещение [1] ( GI ), или непрямое освещение , представляет собой группу алгоритмов, используемых в 3D-компьютерной графике , которые призваны добавлять более реалистичное освещение в 3D-сцены. Такие алгоритмы учитывают не только свет, который исходит непосредственно от источника света ( прямое освещение ), но и последующие случаи, когда световые лучи от того же источника отражаются другими поверхностями в сцене, отражающими или нет ( непрямое освещение ).
Теоретически, отражения , преломления и тени являются примерами глобального освещения, поскольку при их моделировании один объект влияет на рендеринг другого (в отличие от объекта, на который влияет только прямой источник света). На практике, однако, только моделирование диффузного взаимного отражения или каустики называется глобальным освещением.
Изображения, визуализированные с использованием алгоритмов глобального освещения, часто выглядят более фотореалистичными , чем те, которые используют только алгоритмы прямого освещения. Однако такие изображения являются более затратными в вычислительном отношении и, следовательно, генерируются гораздо медленнее. Один из распространенных подходов заключается в вычислении глобального освещения сцены и сохранении этой информации с геометрией (например, излучательностью). Затем сохраненные данные можно использовать для создания изображений с разных точек обзора для создания проходов сцены без необходимости многократного выполнения дорогостоящих расчетов освещения.
Излучение , трассировка лучей , трассировка пучка , трассировка конуса , трассировка пути , объемная трассировка пути , транспортировка света Metropolis , окклюзия окружающего пространства , картирование фотонов , знаковое поле расстояний и освещение на основе изображений — все это примеры алгоритмов, используемых в глобальном освещении, некоторые из которых могут использоваться совместно для получения не быстрых, но точных результатов.
Эти алгоритмы моделируют диффузное взаимное отражение , которое является очень важной частью глобального освещения; однако большинство из них (за исключением излучательности) также моделируют зеркальное отражение , что делает их более точными алгоритмами для решения уравнения освещения и предоставления более реалистично освещенной сцены. Алгоритмы, используемые для расчета распределения световой энергии между поверхностями сцены, тесно связаны с моделированием теплопередачи , выполняемым с использованием методов конечных элементов в инженерном проектировании.
Достижение точного вычисления глобального освещения в реальном времени остается сложной задачей. [2] В 3D-графике в реальном времени диффузный компонент взаимного отражения глобального освещения иногда аппроксимируется «окружающим» членом в уравнении освещения, который также называется «окружающим освещением» или «окружающим цветом» в пакетах 3D-программ. Хотя этот метод аппроксимации (также известный как «обман», потому что это не совсем метод глобального освещения) легко выполнить вычислительно, при использовании в одиночку он не обеспечивает достаточно реалистичного эффекта. Известно, что окружающее освещение «сглаживает» тени в 3D-сценах, делая общий визуальный эффект более пресным. Однако при правильном использовании окружающее освещение может быть эффективным способом компенсировать недостаток вычислительной мощности.
Все больше специализированных алгоритмов используются в 3D-программах, которые могут эффективно имитировать глобальное освещение. Эти алгоритмы являются численными аппроксимациями уравнения рендеринга . Известные алгоритмы для вычисления глобального освещения включают трассировку пути , картографирование фотонов и излучательность . Здесь можно выделить следующие подходы:
В нотации Light-path глобальному освещению пути типа L (D | S) соответствуют * E.
Полное описание можно найти в [3].
Другой способ имитации реального глобального освещения — использование изображений с высоким динамическим диапазоном (HDRI), также известных как карты окружения, которые окружают и освещают сцену. Этот процесс известен как освещение на основе изображения .
Метод | Описание/Примечания |
---|---|
Трассировка лучей | Существует несколько улучшенных вариантов для решения проблем, связанных с выборкой, наложением спектров и мягкими тенями: распределенная трассировка лучей , трассировка конусов и трассировка пучков . |
Трассировка пути | Непредвзятый, вариант: Двунаправленная трассировка пути и трассировка пути перераспределения энергии [4] |
Фотонное картирование | Последовательный, предвзятый; улучшенные варианты: прогрессивное фотонное картирование, стохастическое прогрессивное фотонное картирование ( [5] ) |
Световые вырезы | Улучшенные варианты: многомерные световые переходы и двунаправленные световые переходы [6] |
Точечное глобальное освещение | Широко используется в анимационных фильмах [7] [8] |
Радиосити | Метод конечных элементов, очень хорош для предварительных вычислений. Улучшенные версии — мгновенная излучательность [9] и двунаправленная мгновенная излучательность [10] |
Метрополис легкий транспорт | Основан на двунаправленной трассировке пути, беспристрастной и мультиплексной [11] |
Сферическое гармоническое освещение | Кодирует результаты глобального освещения для рендеринга статических сцен в реальном времени. |
Окружающая окклюзия | - |
Глобальное освещение на основе вокселей | Существует несколько вариантов, включая глобальное освещение с трассировкой воксельного конуса [12] , глобальное освещение с разреженным воксельным октодеревом и глобальное освещение вокселей (VXGI) [13]. |
Объемы распространения света глобальное освещение [14] | Объемы распространения света — это метод приблизительного достижения глобального освещения (GI) в реальном времени. Он использует решетки и сферические гармоники (SH) для представления пространственного и углового распределения света в сцене. Вариант каскадных объемов распространения света. [15] |
Отложенный перенос излучения глобального освещения [16] | |
Глобальное освещение на основе глубокого G-буфера [17] | |
Знаковые поля расстояний Динамическое диффузное глобальное освещение [18] | |
Глобальное освещение на основе Surfels [19] |