IRadiance - RayTracer

PUBLISHED ON AUG 12, 2019

IRadiance Engine is an open-source software raytraced renderer written in C++11. This project is still in development, more features are about to come!

Previously I’ve written a raytracer based on the implementation of Ray Tracing in One Weekend, from Peter Shirley and Paul Heckbert’s business card raytracer. What I did back then was writing the output to a simple image format, .PPM, which requires a specialized software to view the image. I used Photoshop for the above because I already had it available on my computer. This is a simple approach, but I found it very inconvenient to open Photoshop everytime, especially with the long loading times on my computer. Alternatively, I could download some other lightweight software that supports PPM. But I decided to utilize a graphics API, OpenGL in this case, to send the imagebuffer to the GPU for an immediate feedback. This approach enables us to get intermediate render results by sending the partial imagebuffer every 16ms. This might look like a small feature difference but seeing the image being raytraced is really satisfying.

Definitely worth the time and effort!


Features

  • Whitted Raytracer
  • Unidirectional Pathtracing
  • Soft Shadows
  • Area Light
  • Visualize Render Progress
  • Save Render to File
  • MultiCore Rendering

  • If you’re interested to know more, you can the find source code on this github [link].