For this assignment, you will be building a Ray Tracer using Python. The choice of which of these languages is up to you, but keep in mind that language-specific support is not provided (you should use the language you can locally support and are comfortable coding in). The system only needs to handle the rendering of ellipsoids, with a fixed camera situated at the origin in a right-handed coordinate system, looking down the negative z-axis. Local illumination, reflections, and shadows will also need to be implemented.
The program should take a single argument, which is the name of the file to be parsed. Make sure your executable has the name “[login to view URL]” (or equivalent for the language you choose) and that we can run it as in the following examples:
> [login to view URL] [login to view URL]
> java RayTracer [login to view URL]
> python [login to view URL] [login to view URL]
We will use a script to generate the outputs for the set of posted test cases. You will get zero marks if we cannot compile your program and if we cannot run this script because your project does not implement the required specifications above.
Make sure you carefully read the Instructions and Clarifications below as they contain important information on the lighting, scene setup, tracing depth etc.