Уравнение рендеринга

I. Точные методы против приближённых

II: Стреляющие методы против собирающих

III: Приближённые методы: решения, зависимые от вида против решений, не зависимых от вида

Методы GI, поддерживаемые V-Ray

 

 

 

Уравнение рендеринга

Практически все современные GI-визуализаторы основаны на уравнении рендеринга, опубликованном James T. Kajiya в 1986 году в его работе "The Rendering Equation". Это уравнение описывает распространение света в сцене. В своей работе Kajiya также предложил метод для расчёта изображения на основании уравнения рендеринга с использованием метода Монте-Карло, который получил название трассировка пути (path tracing).

 

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

 

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

 

Ещё один, более философский момент, что уравнение рендеринга выведено из математической модели поведения света. Хотя это очень хорошая модель для применения в компьютерной графике, она не описывает точно как ведёт себя свет в реальном мире. Например, уравнение рендеринга допускает, что световын лучи бесконечно тонкие и что скорость света бесконечна. Ни одно из этих допущений не верно для реального физического мира.

 

Поскольку уравнение рендеринга основано на геометрической оптике, вбрасывание лучей (рейкастинг - raytracing) - очень удобный способ решения уравнения рендеринга. Действительно, большинство визуализаторов, которые решают уравнение рендеринга, основаны на рейкастинге.

 

Возможны различные формулировки уравнения рендеринга, но форма, предложенная Kajiya, выглядела так:

где:

L(x, x1) - зависимость прохождения света от точки x1 к точке x;

g(x, x1) - геометрия (или член видимости);

e(x, x1) - интенсивность излученного света из точки x1 в направлении точки x;

r(x, x1, x2) - зависимость рассеивания света, исходящего из точки x2, в направлении к точке x через точку x1;

S - объединение всех поверхностей в сцене; x, x1 и x2 точки из S.

 

Что означает это уравнение: свет, приходящий в данную точку сцены x из (другой) точки x1 является суммой излучённого света из всех других точек x2 в направлении точки x1 и отражённого от неё в направлении точки x:

 

 

За исключением самых простых случаев, уравнение рендеринга на компьютере не может быть решено точно за конечное время. Однако мы можем получить достаточно хорошее приближение к действительному решению за данное достаточное время. Поиск алгоритмов глобального освещения (global illumination - GI) был поиском нахождения решений, которые были бы достаточно близки к теории за разумное время.

 

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

 

I: Точные методы против приближённых

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

 

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

Точные (несмещённые или brute-force) методы

Преимущества:

 

Недостатки:

 

Примеры:

Приближённые (смещённые) методы

Преимущества:

 

Недостатки:

Примеры:

 

Гибридные методы: для некоторых эффектов используются точные методы, для остальных - приближённые

Преимущества:

 

Недостатки:

 

Примеры:

II: Стреляющие методы против собирающих

Стреляющие методы (Shooting methods)

Эти методы начинают от источника света и распределяют световую энергию по сцене. Обратите внимание, что стреляющие методы могут быть как точными, так и приближёнными.

 

Преимущества:

Недостатки:

 

Примеры:

Собирающие методы (Gathering methods)

Эти методы начинают от камеры и/или от геометрии в сцене. Обратите внимание, что собирающие методы могут быть как точными, так и приближёнными.

 

Преимущества:

Недостатки:

 

Примеры

Гибридные методы

Это методы сочетают подход стреляющих и собирающих методов. И снова, гибридные методы могут быть как точными, так и приближёнными.

 

Преимущества:

Недостатки:

 

Примеры:

III: Приближённые методы: решения, зависимые от вида против решений, не зависимых от вида

Некоторые приближённые методы позволяют кэширование решения GI. Кэш может быть либо зависимым от вида, либо независимым.

Стреляющие методы

Преимущества:

Недостатки:

Примеры:

Собирающие методы

Собирающие и некоторые гибридные методы позволяют создавать решения как зависящие, так и не зависящие от вида.

Решения, зависящие от вида

Преимущества:

Недостатки:

 

Примеры:

Решения, не зависящие от вида

Преимущества:

Недостатки:

Примеры:

Гибридные методы

Могут содержать различные комбинации алгоритмов, зависящих и не зависящих от вида.

 

Примеры:

Методы GI, поддерживаемые V-Ray

V-Ray поддерживает несколько методов для решения уравнения GI: точные, приближёееные, стреляющие и собирающие. Некоторые методы больше подходят для специфических типов сцен.

Точные методы

V-Ray поддерживает два точных метода для вычисления уравнения рендеринга: прямое вычисление (brute force) GI и прогрессивная трассировка пути (progressive path tracing). Различие между ними в том, что метод прямого вычисление GI работает с традиционными алгоритмами постоения изображения (визуализация бэкитов) и адаптивен, тогда как метод трассировки пути улучшает всё изображение целиком и не выполняет никакой адаптации.

Приближённые методы

Все остальные методы, используемые в V-Ray (irradiance map, light cache, photon map) – приближённые.

Стреляющие методы

В V-Ray только один стреляющий метод: photon map. Каустика также может быть вычислена с помощью фотонного преобразования в комбинации с собирающим методом.

Собирающие методы

Все остальные методы в V-Ray (brute force GI, irradiance map, light cache) – собирающие.

Гибридные методы

V-Ray может использовать различные методы вычисления GI для первичных и вторичных отскоков, что позволяет комбинировать точные и приближенные, стреляющие и собирающие алгоритмы в зависимости от поставленных целей. Некоторые из возможных комбинаций представлены на странице Примеры GI.

 


Хостинг от uCoz