Portfolio

Software Raytracer

Custom raytracer written from scratch

  • Educational project

This raytracer was an educational assignment. The aim of this assignment was to implement a software raytracer with the following features:

  • Well-designed architecture
  • Support for point- and area (volumetric) lights
  • Support for the following mathematical shapes:
    • Spheres
    • Boxes
    • Planes
  • Hard & soft shadows
  • Lighting model (Phong in this case)
  • Reflections
  • Refraction
  • Material definitions supporting arbitrary combinations and values of reflectivity, refractivity, reflective diffuseness, refractive diffuseness
  • Visualization of traced rays in a top-down view
Additionally, this project includes:
  • Depth of Field
  • Anti-Aliasing
  • Dynamic multi-threading
Date
2011
Tech
  • C++