• Stars
    star
    138
  • Rank 264,508 (Top 6 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created almost 10 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple monte carlo path tracer in C++

Path Tracer

Simple monte carlo path tracer in C++.

Features

  • Mesh Rendering
  • Obj Model Import
  • Textures (PNG only at the moment)
  • Simple naive KD tree for meshes.
  • Diffuse, specular, and emission material types

Compiling and Running

Requires cmake and OpenMP for multithreading.

Compile:

$ mkdir build
$ cd build
$ cmake ..
$ make

Run:

$ ./pathtracer <number of samples>

This will render the Stanford Dragon scene which is included. Take a look at src/main.cpp to see how to create a scene and import objs.

Sample Images

Dabrovic Sponza

Dabrovic Sponza - http://hdri.cgtechniques.com/~sponza/files/

Stanford Dragon

Stanford Dragon - http://graphics.stanford.edu/data/3Dscanrep

Stanford Lucy

Stanford Lucy - http://graphics.stanford.edu/data/3Dscanrep

Cornell Box

Cornell Box