Skip to content

math-araujo/ray-tracing-series

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ray Tracing Series

Implementation of Peter Shirley's Ray Tracing Book Series

Scenes

Some renders done throught the books:

In One Weekend Final Scene
Random spheres with different materials (lambertian, metal and dielectric)
Emissive Material with Perlin Noise Texture
Emissive material and a sphere with noise texture (made using Perlin noise)
Classic Cornell Box
Classic Cornell Box
Cornell Box with Smoke
Cornell Box with colored smoke
Next Week Final Scene with 50 samples per pixel
Next Week final scene with 50 samples per pixel
Next Week Final Scene with 1000 samples per pixel
Next Week final scene with 1000 samples per pixel

Some custom made scenes:

Wikipedia Path Tracing with Ambient Light

Wikipedia Path Tracing with Diffuse Light

Recursives Spheres

Bunny Point Cloud Note: the model used in this scene is the famous Stanford Bunny, which can be downloaded in this link, and is part of the Stanford 3D Scanning Repository.

Diffuse Light Bunny Point Cloud

Building

Requirements: CMake >= 3.12

Download stb_image and move it into src/external/

cd build

cmake ..

cmake --build . (add other CMake options as desired e.g. cmake --build . --config Release)

TODO

  • Implement The Rest of Your Life

  • Refactor the code to replace std::shared_ptr with const-references whenever it's possible.

  • Refactor the code to accept a command-line argument to choose the scene, instead of hard-coding the choosen scene in a variable.

  • Check v4.0 when it comes out, then refactor or add any substantial changes.

About

Simple recursive path tracer in C++

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors