Wednesday, November 6, 2024

Monte Carlo Path Tracer C++

I made a Monte Carlo Path Tracer in C++. I used PDFs to sample important places in the scene like the Sphere to make the caustic and the light to remove the  Noise. I also made a PDF for lambertian surfaces.


It also has:

  • It loads 3D Objects
  • It has BVH (Bounding Volume Hierarchies) for fast ray intersection testing. The boxes are aabb's (Axis Aligned Bounding Boxes).
  • I made this Materials: (Isotropic, Lambertian, Metal and Dielectric).
  • I made Texture Mapping. (2D Texturing).
  • I made the Motion Blur.
  • I made 3D Texturing with Perling Noise.


This one has Motion Blur on the orange ball, Texture Mapping, Refractive Material, BVH Hierarchy and Perling Noise:


If you want to look into the Code:

Path Tracer Code



No comments:

Post a Comment