Last update: October 21, 2004
RAY++ is a collection of C++ classes needed for ray tracing (shapes,
surfaces, cameras etc.). The object-oriented design makes it easy to extend
the package. RAY++ is distributed under the terms of the GNU Library General
Public License (LGPL).
This package could best be described as a 'plug-and-play' ray tracer.
It might be interesting for all those folks who miss one feature or another
in the 'industrial strength' packages (e.g. POV-Ray) or just like ray tracer
programming, but don't have the time to write their own ray tracer from
If you belong to this people, I encourage you to write extensions to
RAY++ and send them to me so that I can include them in the next release.
There are virtually no limits for your fantasy: you can implement your
own shapes, light sources, surface textures, volume shaders and cameras.
It is even possible to implement a completely different ray tracing algorithm
(e.g. general relativistic ray tracing) or animation support just by adding
a new class.
If you have any bug reports, comments, suggestions, questions, flames
etc., please contact me,
because I need a lot of feedback for this project. To know that other people
are interested in what I'm doing is the best motivation for working on
RAY++ I can think of.
If you have created interesting pictures with RAY++, please send
them to me and I will add them to the Ray++ gallery.