School-Ray-Tracer
A more advanced Ray Tracer with shaders, bsdf, anti-aliasing and much more !
Introduction
This Ray Tracer is the school project for image traitment program of 3rd bachelor year in computer science, there are some scenes you can try ! Or you can add yours setting the right lines in the main.cpp (do not break it !)
What does this Ray Tracer include ?
- Basic Ray-Casting from foved camera to a 3d scene represented with points, distances and vectors.
- Basic shading and shades : realistic effects on the color of the objects in the scene.
- BSDF : realistic effect of light scattered by the surfaces.
- Reflexions and refractions
- Anti-aliasing : using basic supersampling
- Mapping : possibility to add a texture to any of these parameter (in the material of the object)
- Diffuse color
- Specular color
- Roughness (for the BSDF)
- Intersection normals
Download
To download this project you can clone it with the submodules so you can build it and edit it as you want using your favorite environment.
git clone --recurse-submodules <gitlink>
- hint : you can get the git link clicking on the
clone
button on the top of the repository.
- hint : you can get the git link clicking on the
Build
- Go to src, make sure all the dependencies are in this
src
directory. Open a terminal and run the following commandsmkdir src/build
cd src/build
cmake ..
make
- Then you'll have two executable files in the
build
directory :mrt
andunit-test
(<= you don't need this one)
Execution
Command : ./mrt [out_file_name] [id_scene]
Width id_scene
from 0 to 8.