Перш за все, хорошим посиланням на простеження шляху Монте-Карло в ЗМІ, що беруть участь, є ці курсові записки від Стіва Маршнера.
Те, як мені подобається думати про розсіювання об'єму, полягає в тому, що фотон, що подорожує через середовище, має певну ймовірність на одиницю довжини взаємодії (отримуючи розсіяний або поглинений). Поки він не взаємодіє, він просто йде безперешкодно і без втрати енергії. Чим більше відстань, тим більша ймовірність того, що він взаємодіє десь на цій відстані. Імовірність взаємодії на одиницю довжини - це коефіцієнт який ви бачите в рівняннях. У нас зазвичай є окремі коефіцієнти для ймовірностей розсіювання та поглинання, тому .σσ=σs+σa
Ця ймовірність на одиницю довжини є саме джерелом закону Бера-Ламберта. Розріжте сегмент променя на нескінченно малі інтервали, розглядайте кожен інтервал як незалежне можливе місце для взаємодії, а потім інтегруйте вздовж променя; ви отримуєте експоненціальний розподіл (з параметром швидкості ) для ймовірності взаємодії як функції відстані.σ
Отже, щоб відповісти на ваші запитання безпосередньо:
Ви можете технічно вибирати відстань між подіями, скільки хочете, якщо ви правильно зважуєте шлях на ймовірність того, що фотон може зробити його між двома сусідніми подіями, не взаємодіючи із середовищем. Іншими словами, кожен сегмент контуру в середовищі вносить ваговий коефіцієнт , де - довжина відрізка. (Це припущення про однорідне середовище, але дивіться розділ 4.2 у примітках Маршнера, зв'язаних вище, що робити, якщо воно неоднорідне.)e−σxx
Враховуючи це, зазвичай вдалим вибором відстані є вибір важливості для вибору з експоненціального розподілу. Іншими словами, ви встановлюєте а потім виключаєте фактор від ваги шляху.x=−(lnξ)/σe−σx
Потім, щоб врахувати поглинання, ви можете використовувати російську рулетку, щоб знищити частину шляхів на кожному заході. Це особливо необхідно для дуже великих чи нескінченних середовищ (думаю, атмосферне розсіювання), де шлях може відскочити навмання довгий час, якщо його не вбити. Якщо ви маєте справу лише з невеликими та не надто густими засобами масової інформації, то, можливо, краще просто врахувати вагу за подію, а не використовувати російську рулетку.σa/σ1−σa/σ
Ні, якщо дотримуватися щойно описаної процедури вибірки важливості, Beer-Lambert вже включено неявно у вибірку, тому ви не хочете застосовувати її до ваги шляху.
Об'ємний еквівалент BSDF - це комбінація коефіцієнтів розсіювання та поглинання та фазова функція. За умовою, коефіцієнти контролюють загальний баланс передачі, розсіювання та поглинання, при цьому фазова функція завжди нормалізується.σs,σa
Ви можете зробити щось подібне і для BSDF; Ви можете визначити загальний альбедо, і залежність від спрямованості завжди нормалізується. Це здебільшого питання конвенції AFAICT.
Спробуйте "медіа, що беруть участь" (тобто об'ємне "середовище" - множинне "носій" - яке "бере участь" у легкому транспорті) та "об'ємне відстеження шляху".