Является ли теневой луч в трассировщике Белых лучей перекрытым прозрачными объектами?

10

В трассировщике Whited ray каждое пересечение луч-объект порождает проходящий луч (если объект был полупрозрачным), отраженный луч и теневой луч. Теневой луч вносит вклад в компонент прямого освещения.

Но что произойдет, если теневой луч пересекает прозрачный объект? Компонент прямого освещения игнорируется? Как рассеянные объекты, погруженные в воду, будут освещены, если они не получат прямой световой вклад от теневого луча?

user11171
источник

Ответы:

2

Сначала вы должны обратиться к уравнению рендеринга . Это общее уравнение для описания физического пропускания света с точки зрения информатики.

Оттянутая модель является лишь приближением поверхностного интегрирования уравнения рендеринга. Он рассчитывает только три световых луча (теневой луч, отраженный луч и преломленный луч). В более изощренном трассировщике лучей вы должны использовать трассировку лучей Монте-Карло, где в каждой точке пересечения на объекте вы будете использовать тысячи образцов лучей в соответствии с BRDF. Такие отсталые алгоритмы на самом деле плохо работают на едкой сцене, о которой вы говорите. Вы можете использовать Photon Mapping плюс Monte-Carlo Ray Tracing, чтобы получить лучшую визуализацию.

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

куб.см
источник