Home Page
What's New?
Try It Online!
References and Links

Getting Raja

User Docs
Developer Docs

* What's Raja?

Raja stands for "Ray-Tracer in Java". The Raja project intends to build a complete modern Ray-Tracer using the Java langage. The whole source code is under LGPL and GPL terms. Up to date information about the project can be obtained at the SourceForge Project Page.

  • We have now completed :
    • Color mixing, Shading,
    • Exact correction of the acne effect,
    • Spheres, Planes, Cylinders, Cones,
    • Union, Intersection, Complement,
    • Reflection, Advanced Refraction (Maxwell laws),
    • Basic Parsing (temporary version, waiting for XML format),
    • Modular rendering architecture,
    • Naive supersampling, Diadic sampling,
    • GNU style command line user interface (using java getopt),
    • Basic graphical user interface.

  • We are currently coding (version 0.4.0) :
    • Documentation :
      • API Documentation,
      • User Manual,
      • Developer Manual.

We have already planned a quite complete list of features to add in Raja. Feel free to email us any comments, suggestions, and even pieces of code to include in Raja!

* Why in Java?

Most of the people who discover the Raja project ask us the same question : Why did you use Java?

Well, we could say that Java is one of the better language in the object oriented family, that his API is probably one of the best, that it's running on many OS, ...
But you probably reply that Java is really, toooooooo slooooow to code a such "chip burning"'s application.
Actually, this is fairly an accident. In the very first time, we had to do a course on objects programming in Java. We choosed, as a guideline, to code a ray-tracer while the course. So, we immediately start to investigate the difficulty of coding a such application.
First at all, we were stunned by the facility of coding the shading primitives on sphere and the adequation of the object oriented way of coding. And we began to look after some extra documentation.

Then we were trapped. :-)

As we started to build a student project, we never tried to aim the better perfs, but a clean code and smart concept.
This "way of coding" is still here (we hope so) and we'll try in the future to add all the most common functions of modern ray-tracers to Raja and (maybe) some new one.

Comments to Webmaster
Sun Sep 22nd 2002, 06:16:32 PM