Незважаючи на те, що я не знав про простеження шляху Монте-Карло, коли писав це, я випадково описав це. За іронією долі, пошук монто карло - відповідь, яку я шукав у той час.
Наївне монто-карло трасування шляху працює, оцінюючи те, що називається рівнянням візуалізації, щоб чисельно вирішити значення кольору пікселя. Він бере випадкові зразки шляхом випадкового тремтіння в межах пікселя (є кращі стратегії вибірки та фільтрація: яке основне міркування для запобігання згладжуванню з використанням декількох випадкових зразків у межах пікселя? ), А також шляхом підстрибування у випадкових напрямках, коли промінь потрапляє на поверхню .
Це може зайняти багато зразків, щоб отримати хороші результати, а при недостатній кількості зразків ваше зображення буде виглядати галасливим. Щоб розрізати шум навпіл, потрібно 4 рази більше проб. Час візуалізації може бути приблизно за годину, використовуючи 8 сучасних ядер CPU для простої сцени.
Існують більш досконалі методи відстеження шляху Монте-Карло, які дозволяють швидше отримувати кращі зображення, такі як вибірка важливості або позначення зображення після його надання.
Трасування шляху в Монте-Карло може створювати фотореалістичні зображення та надає безліч розширених функцій візуалізації лише тому, що воно відповідає фізичним законам і дає реалістичні результати.
Більше про це можна прочитати тут:
http://blog.demofox.org/2016/09/21/path-tracing-getting-started-with-diffuse-and-emissive/
Ось приклад зображення, на який було потрібно близько години, щоб візуалізувати всі 8 моїх процесорних ядер: