My little path tracer

A picture is worth a thousand words.
Posts: 19
Joined: Sun Oct 29, 2017 3:15 pm

Re: My little path tracer

Postby dawelter » Fri Mar 16, 2018 8:34 am

I think I squashed the worst bugs. This is fun stuff.
parabolic_reflector_volumetric.jpg (477.89 KiB) Viewed 542 times

A perfectly parallel beam send through a scattering medium. The sphere is made of a much denser medium. It is sub surface scattering with brute force BDPT.
boxy_laser.jpg (428.54 KiB) Viewed 542 times

Posts: 19
Joined: Sun Oct 29, 2017 3:15 pm

Re: My little path tracer

Postby dawelter » Sat Mar 24, 2018 8:38 am

I threw a "real world" scene at it. Thinking about how else I could exploit volume caustics in lack of refractive materials, I figure it would be cool to build a solar thermal power plant model. :-D

Modelled in and Cinema 4D.
677761 Triangles, most of them occluded due to the bricks being stuck in each other.
8700 SPP in 34 h :?

The scene is contained in a box with a scattering medium, obviously. Fireflys due to SDS paths? I'm not sure, but I suppose there can be paths from camera to mirror to volume scattering to mirror to sun. The sun spans a small solid angle, so there is a non-zero chance to hit it with a "forward path" like that and it would be the only technique in Veach's sense to generate the path. Makes sense?

There is also some sort of "light leak" on the first mirror.
solarlego.jpg (358.62 KiB) Viewed 430 times

EDIT: Hm .. after some testing the strange "leak" appears to be no bug after all. I'll write it off as caustic cast by the mirror behind the one with the "leak".

Here is another shot. Moved the rear mirror a bit to see more of the caustics. Tuned down brightness. Converges and looks like normal illumination.
solarlego_bug2.jpg (8.34 KiB) Viewed 388 times

Posts: 48
Joined: Sat Dec 10, 2011 1:58 am
Location: Los Angeles, CA

Re: My little path tracer

Postby beason » Wed Apr 18, 2018 1:07 am

Your explanation makes sense. Looks very nice! I like the planar laser beam. :D

Posts: 19
Joined: Sun Oct 29, 2017 3:15 pm

Re: My little path tracer

Postby dawelter » Fri Apr 20, 2018 7:44 am

Thank you beason!

Actually there was a bug. I wrongly assumed that pdfs for BSDF sampling are symmetric which they are clearly not. p(wi,wo) = p(wo,wi)? No! no! Ah well, how does one say, assumptions are the mother of all f'ups. I finally realized my mistake when ...

I implemented statistical tests (chi-sqr and t-test) for my scatter functions in the style of PBRT and Nori. I found it quite tricky. Because the chance to have at least one false alarm grows quickly with the number of tests. On the other hand, if the threshold for the p-value is made too low one runs the risk of false negatives. My solution is to change the RNG seed rather than lowering the p-value. :lol:

Still have trouble with the microfacet BSDF. I get bad number of samples at the edge of a bin where incidentally wi*h = wo*h = 0. At that place the pdf also seems to diverge because of a 1/|wi*h| term. I'm unsure if bug or not. Probably not. The material looks okay ... ;)

Return to “Visuals”

Who is online

Users browsing this forum: No registered users and 1 guest