My little path tracer

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

My little path tracer

Postby dawelter » Sat Dec 09, 2017 8:39 am

This came out of my path tracer.
cornelbox3.jpg (161.07 KiB) Viewed 918 times

Unfortunately convergence stagnated after some 10k samples per pixel. Not unexpected since it is a difficult scene. Lit by two point lights through the holes in the ceiling. I haven't implemented area lights. The medium has chromatic collision coefficients with high scattering for blue wavelengths.


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

Re: My little path tracer

Postby dawelter » Mon Dec 11, 2017 12:42 pm

Trying to reproduce results from Peter Kutz's Sky Render.
Using 10 discrete wavelengths, no ozone, purely exponential density decrease. Something is wrong. Much too greenish for my taste.
atmosphere_fisheye1.jpg (61.03 KiB) Viewed 875 times

atmosphere_fisheye2.jpg (46.42 KiB) Viewed 875 times

My approximation to the solar emission spectrum might be inadequate in the blue wavelengths :roll:
solarspectrum10bins.png (14.11 KiB) Viewed 875 times

Yeah that looks better! ... 3.jpg?dl=0 ... 4.jpg?dl=0

I changed two things at once: 36 bins instead of 10. sRGB output instead of CIE RGB 1931 because if I tell CIMG to write jpg it is probably going to be interpreted as sRGB.

Because I need RGB to spectrum conversions, I implemented the way of Smits (1999) but with more bins (kind of). The code is easily adaptable. I put it up on github: ... sWay.ipynb

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

Re: My little path tracer

Postby dawelter » Sat Jan 20, 2018 2:05 pm

Been working on my path tracer. Implemented table lookup for the height profile of collision coefficients. After some more work I could reproduce the blueness of the evening sky due to absorption by ozone.
atmosphere_fisheye_ozone_compare.jpg (473.17 KiB) Viewed 615 times

Now there is support for area lights - in the form of triangles and spheres. Before, it supported only point lights and distant directional lights. Implemented MIS weighting for light vs. BRDF sampling.
arealights.jpg (453.05 KiB) Viewed 615 times

Quick test rendering with clouds went super slow. The ground is not a plane but a huge sphere. Thus the geometry is extremely inhomogeneously distributed. And my naive Kd-tree cannot cope with it.
atmosphere_cloudy.jpg (65.41 KiB) Viewed 615 times

Posts: 46
Joined: Thu Apr 24, 2014 8:18 am
Location: Munich, Germany

Re: My little path tracer

Postby koiava » Tue Feb 06, 2018 11:21 am

Really good results :)
Colibri Renderer

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

Re: My little path tracer

Postby dawelter » Wed Feb 07, 2018 7:56 am

Thank you!

Meanwhile I have a better pic. Something about the clouds strikes me as odd. Still a nice second try if you ask me. :-)
atmosphere_cloudy.jpg (776.3 KiB) Viewed 280 times

To test my algorithms needed a material that has a "delta peak" plus a continuous density, so I implemented a dielectric material with a perfectly specular reflective layer. I followed a publication by Kelemen and Kalos (2001) to obtain a symmetric brdf which goes to fully specular towards grazing angles. The result:
material_test_scene.jpg (323.38 KiB) Viewed 280 times

Return to “Visuals”

Who is online

Users browsing this forum: No registered users and 1 guest