Ali Hafez/Projects/

Ray Tracer

September 2023, for fun



A simple raytracer I made when I was bored in the earlier weeks of a semester, and had recently gotten into graphics, following my first computer graphics class (CS 679). I followed an online tutorial called Computer Graphics from Scratch, and occasionally used information from another Raytracing in One Weekend. For the interested, they're both incredible tutorials to build a ray tracer.

To give a quick rundown, a ray tracer is essentially a mathematical way to convert a scene of objects into a visible image. Ray tracers work specifically by casting out a ray from each pixel on the hypothetical "screen" in your scene, and computing intersections with objects, using that information for reflections, shadows, et cetera. Ray tracing mirrors the way photons bounce around from light sources to our eyes in real life Except it does the complete inverse of the natural way, actually! For computational efficiency. , which makes it very physically accurate, especially when more features are implemented (which is something I would like to continue with here, at some point!).