TinyRaytracer 0.1
A simple C++ raytracer
Loading...
Searching...
No Matches
TinyRaytracer

A simple C++ raytracer implementation with reflection, refraction, texture, global illumination, CPU multi-thread acceleration and BVH support.

The Doxygen Documentation is here.

Roadmap

  • [x] Reflection
  • [x] Refraction(Transparency)
  • [x] Bounding volume hierarchy
  • [x] Global illumination
  • [x] Doxygen comment support
  • [ ] Specular Lighting(Blinn–Phong)
  • [ ] GPU-friendly BVH Tree and general data structure
  • [ ] CUDA acceleration
  • [ ] .obj reader
  • [ ] Photon Mapping
  • [ ] Glossy specular reflection(BRDF)
  • [ ] Denosing
  • [ ] More?

‍10,000 spheres, with roughness, depth-of-field, anti-aliasing and shininess. Rendered in 49.196 seconds with an i7-12700kf.(Version 0.1)

‍1,715 triangles using 1,162 vertices, plus two spheres with global illumination, transparency, and reflections. Rendered in 7.564 seconds with an i7-12700kf.(Version 0.1)

Reference

The base of this project is a MP I wrote for CS418, Interactive Computer Graphics, at the University of Illinois Urbana-Champaign.

Ray Tracing: The Next Week

CS 418 Interactive Computer Graphics

CS 419 Production Computer Graphics