This is a simple C++ Raytracer, outputting reasonably pretty images. The project started out as a humble Raycaster, but turned into more of a Raytracer since the image wasn't very satisfying.
- Lambertian shading
- Material for metal with 'fuzz'
- Simple camera system
- Support for multiple spheres
- Linear RGB
- Linear space -> Gamma space (gamma correction)
- Reflection
- Refraction
- PPM output
- UI
- Quadrilaterals
- Move from RGB to spectral
- BVH (Bounding Volume Hierarchies)
- Textures
- Lights
- Multiple scenes
- Instancing
- Volumes
- More standardized file format (PNG, JPEG, etc...)