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


10

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

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

Ответы:


2

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

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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.