anandhotwani / diyaRenderer

A personal uni-directional path-tracer project.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Diya Renderer

A personal uni-directional path-tracer project. "Diya" is named after the small oil lamps found in India.

This path-tracer is based on examples from Scratchapixel, Ray-Tracing in One Weekend and PBRT and is still work-in-progress.

Features

  • Monte Carlo sampling for brute force global illumination
  • Triangle Mesh (.obj) rendering
  • KD-Tree acceleration structure
  • Diffuse, Specular and Emissive BRDF shaders
  • Area lighting
  • Simple multi-threaded with OpenMP
  • Object-to-World and Cam-to-World matrices to directly read in Maya scenes.
  • ACES RRT+ODT Display Transform for sRGB

Renders

01 02 kitchen

Run

>>> mkdir build
>>> cd build
>>> cmake ..
>>> make

And then

>>> ./diya [SAMPLES]

About

A personal uni-directional path-tracer project.


Languages

Language:C++ 98.6%Language:C 1.1%Language:CMake 0.2%