Skip to content

A Monte Carlo Ray tracer made as a part of the course TNCG15 - Advanced Global Illumination and Rendering.

Notifications You must be signed in to change notification settings

jlndr/monte-carlo-ray-tracer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Monte Carlo Ray Tracer

A Monte Carlo Ray tracer that renders still images of 3D scenes using the Monte Carlo integration algorithm.

The ray tracer calculates intersections, direct lighting, indirect lighting and colorbleeding, diffuse materials, perfectly reflecting materials and transparent materials to render the scene. Uses super sampling and ray randomization. The rendering process uses simple parallelization with openMP.

The project was made as a part of the course TNCG15 - Advanced Global Illumination and Rendering.

Developed by Johan Linder and Oscar Olsson

Rendered image with 400 samples per pixel:

Works for objects with one of the following material properties:

  • Transparent objects
  • Lambertian reflectors
  • Oren Nayar reflectors
  • Perfect reflector (mirror)

How to run

#Compile
make
#Run binary
./bin/mc-raytracer

Modify main.cpp to change the number of samples per pixel.

About

A Monte Carlo Ray tracer made as a part of the course TNCG15 - Advanced Global Illumination and Rendering.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published