MedericCar / pathtracer

Basic path tracer in C++

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Raytracer

Basic path tracer in C++.

Examples

Mirror Balls Mitsuba

Installation

Dependencies

  • CMake
  • Conan

Commands

$ mkdir build
$ cd build
$ conan install ..
$ cmake -DCMAKE_BUILD_TYPE=Release ..
$ make app

Usage

Specify scene characteristics in a JSON file following the format in scenes/ and execute :

$ ./app -f /path/to/scene/json -n number_of_spp

Implemented

  • Scene parametrisation with JSON
  • OBJ and MTL files loadable
  • Monte Carlo integrator
  • BSDF : Lambertian diffuse, Fresnel dielectrics, Microfacets
  • Axis based BVH
  • Multithreaded computation of the image

TODO

  • Improve interface with OBJ and MTL (only load as diffuse for now)
  • Improve BVH strategy
  • Add BSDFs

References

About

Basic path tracer in C++


Languages

Language:C++ 95.1%Language:CMake 4.9%