Почему трассировка по методу Монте-Карло выполняется лучше, чем трассировка по распределенным лучам?

30

Я слышал, что качество трассировки Монте-Карло (основанной на алгоритмах трассировки пути) гораздо более реалистично, чем распределенный (стохастический) движок. Я пытаюсь понять, почему, но я только в начале.

Чтобы погрузиться в эту тему и понять основы, кто-то может указать мне правильное направление? Какая часть алгоритма приводит к более реалистичному результату рендеринга?

p2or
источник
9
Я хотел бы больше, чем «Рекомендация солидной книги», поскольку на этот вопрос должен быть дан прямой ответ того, кто знает об этом. Мы должны попытаться разместить информацию на сайте, а не указывать на нее вне сайта.
Робобенкляйн
@robobenklein Вопрос отредактирован, подумал, что лучше быть осторожным;)
p2or
@ChristianRau Удаление «Спасибо» следует обсудить в мета-версии, это отличается на каждом сайте обмена стека ...
p2or
1
@ Плохо Нет, на самом деле это не так. Это то, что нигде не меняется. И пока у нас нет специальных правил, мы все равно применяем общие правила SE. Но даже тогда я вряд ли смогу представить кого-либо, кто бы проголосовал за это здесь. Я никогда не видел, чтобы это было хорошей практикой на любом другом сайте SE.
Крис говорит восстановить Монику

Ответы:

31

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

Трассировка лучей Монте-Карло - это слегка двусмысленный термин. В большинстве случаев это относится к методам рендеринга, которые решают уравнение рендеринга, представленный Джимом Каджия в 1986 году с использованием интеграции Монте-Карло. Практически все современные методы рендеринга, которые решают уравнение рендеринга, такие как трассировка пути, двунаправленная трассировка пути, прогрессивное картирование фотонов и VCM, могут быть классифицированы как методы трассировки лучей Монте-Карло. Идея интегрирования Монте-Карло состоит в том, что мы можем вычислить интеграл любой функции путем случайного выбора точек в области интегрирования и усреднения значения функции в этих точках. На высоком уровне, при трассировке лучей Монте-Карло мы можем использовать эту технику, чтобы интегрировать количество света, попадающего на камеру в пикселе, чтобы вычислить значение пикселя. Например, трассировщик пути делает это путем случайного выбора точки в пикселе для съемки первого луча, а затем продолжает случайным образом выбирать направление для продолжения на поверхности, на которую он падает, и так далее. Мы также можем случайно выбрать позицию на оси времени, если мы хотим сделать размытие в движении, или случайным образом выбрать точку на апертуре, если вы хотите сделать глубину резкости, или ...

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

Вы можете рассматривать трассировку лучей Монте-Карло как более общую версию распределенной трассировки лучей. Трассировка лучей Монте-Карло содержит общую математическую структуру, которая позволяет обрабатывать практически любые эффекты, в том числе те, которые упоминаются в распределенной трассировке лучей.

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

Бенедикт Биттерли
источник
5

При распределенной трассировке лучей вы стохастически отбираете множество лучей в направлениях, которые могут или не могут быть предпочтительными для BRDF. Принимая во внимание, что при трассировке лучей Монте-Карло или просто трассировке траектории вы отбираете только один луч в направлении, предпочтительном для BRDF . Итак, у Path Tracing есть два очевидных преимущества:

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

Итак, трассировка пути даст вам лучшие результаты.

ranagraw
источник
2
«Принимая во внимание, что при трассировке лучей Монте-Карло или просто трассировке пути вы отбираете только один луч в направлении, предпочтительном для BRDF». По сути, вы не знаете, как выбран луч. Наивные подходы используют случайные лучи. Принятие во внимание BRDF является важной выборкой и не присуще трассировке лучей Монте-Карло или трассировке.
Дэвид Кури
4
Я считаю, что этот ответ полностью ложен. Вы можете свободно отбирать исходящие лучи и взвешивать их результат при объединении. Вы получаете ту же правду, что и техника русской рулетки, но общепринято, что первый метод более дорогой.
v.oddou