The RT is a raytracing engine built from the ground up in C, with no library outside of the strict minimum to print a pixel on a canvas.

The RT uses a variety of primitives such as spheres, planes, or cones to render it’s scenes. Finding it limiting, it was decided that the RT would include a host of additional features, such as Boolean operations, Bumpmaps, and textures.


To create the aforementioned scenes, we created a relatively simple description language. While it is basic, it led us to create a Lexer and a parser to ensure the integrity of the file.
The example illustrated to the left is part of the file describing the above image. While creating scenes proved laborious without a classic UI, the file support helped tremendously with testing.