Raytracer
Description
This project was a graphics programming assignment by Dr. J. Bikker at Breda University of Applied Sciences.
Tools
- C++
- SDL library template
- Microsoft Visual Studio 2012
Info
April 2014








Features
Original assignment list, second column are bonus objectives
- Camera position / orientation
- Shadows
- Class for point lights
- Make the application interactive
- Controls
- ‘quick render’ mode
- Add the Phong shading model
- N dot L
- Specular component
- Ambient color
- Material class
- Reflections
- Visualization of normals
- Anti-aliasing
- Depth of field
- Recursive ray tracing
- Refraction
- Fresnel
- Absorption
- Diffuse reflections
- Soft shadows
- Area lights
Diffuse refractions- Diffraction
Triangle intersectionTriangle mesh loading
HDR skydome- SIMD intersection of 4 rays
- Texture mapping
Ambient occlusionPath tracingAcceleration structure
ANTI-ALISING
Ray tracing allows for perfect sub-pixel anti-aliasing, by randomizing the ray origin for each pixel and averaging the results.
DEPTH OF FIELD
A camera lens can be simulated, offering photorealistic depth-of-field and focal point.
GLASS SIMULATION
Schlick’s approximation is used to determine the ratio between reflection and transmittance when colliding with translucent objects. Resulting in realistic zoomed and flipped images