This is my wrap-up for learning C++. I will stop implementing my own global illumination engine and focus completely on probabilistic visibility and acceleration structures.
I did manage to implement transparent materials and I was succesfull in seperating the calculation of direct light and indirect light. The results are shown below. The direct illumination was sampled with 256 samples per pixel, the indirect illumination was sampled with 5000 samples per pixel. It took 4,5 hours to complete.
|
Direct illumination only (256 samples per pixel) |
|
Indirect illumination only (5000 samples per pixel) |
|
The combined image (total rendering time 4,5 hours) |