This is a basic PathTracer.
OpenMesh - https://www.openmesh.org
Eigen - https://eigen.tuxfamily.org
LodePNG - https://lodev.org/lodepng/
JSON for Modern C++ (by nlohmann) - https://nlohmann.github.io/json/
Thibault Guisnet and Anis Ladram, EPITA students (IMAGE 2020)
On the left, we have the image directly generated with our PathTracer, on the right we have the image after denoising (we used the Nvidia denoiser).
Classic BSDF (lambert BRDF, no BTDF) :
Classic BSDF with more computing time :
We add a mirror BSDF for the left rectangle :
We add a mirror BSDF and we change our point of view :
We try a metal BSDF for the left rectangle :
We try a glass BSDF for the right cube, and a mirror BSDF on a sphere :
We try the PathTracer on a more complicated obj :
Finally, we try to render a complex scene :