Skip to content

Latest commit

 

History

History
17 lines (13 loc) · 1.06 KB

README.md

File metadata and controls

17 lines (13 loc) · 1.06 KB

PathTracer

This is a hobby project in which I implemented Monte Carlo path tracing for physics based rendering.

Current Features

  • Unidirectional path tracing
  • Multithreaded execution based on the C++11 threading library
  • 2 Types of geometry (spheres and infinite planes)
  • 3 Materials (diffuse colored surfaces, mirrors and glass)
  • 2 Types of light sources (point lights with next event estimation or emissive surfaces)
  • Saving images as HDR exr files and LDR ppm files

The image below was rendered using the path tracer in this repository. Example Render

Building and running the code

At the moment there is no user interface yet, so to change the scene you have to recompile the code. A visual studio project is provided in this repository. Two libraries are used (GLM and TinyEXR) but both are header only so they don't need to be compiled separately. These libraries are included as submodules so make sure to clone the repository recursively.