A simple raytracer in exactly 450 lines of C code.
output.bmp | ||
README.md | ||
stb_image_write.h | ||
tinyray.c |
tinyray
A simple raytracer in exactly 450 lines of C
Features
- Sphere-Ray Intersection
- Materials
- Diffuse and Specular Lighting
- Point, Directional, and Ambient Lights
- Custom Floating-Point Vector Library
- Output to image with stb_image
- Gradient Background
- Watermark
Helpful Resources
I created this toy raytracer to learn about basic raytracing (and for fun, of course), taking inspiration from the following resources:
- Gabriel Gambetta: Computer Graphics From Scratch
- Scratch A Pixel: Minimal Ray Tracing
- ssloy's tinyraytracer
The first link is especially helpful in understanding how raytracing works from a mathematical perspective.
I created this for fun for the UoA ENGGEN 131 Art Challenge