Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


This file is part of Rusty's Raytracer.

Rusty's Raytracer is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the Free
Software Foundation, either version 3 of the License, or (at your option) any
later version.

Rusty's Raytracer is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
more details.

You should have received a copy of the GNU General Public License along with
Rusty's Raytracer.  If not, see <http://www.gnu.org/licenses/>.

Copyright 2008 Rusty Burchfield


Rusty's Raytracer

Version 1.0.2

Rusty Burchfield

= Tweaking
If you would like to change the rendering options, start by opening main.cpp in
your favorite editor.  There are a number of material, lighting, and camera
lines commented out.  Materials stack on top of objects to produce effects,
camera decorators work in the same way (tone operators, super sampling).

If you don't see a configuration option you want, view the source for the class
you are instantiating.  There may be other constructors that take the parameters
you desire to change.

If you have any questions, please do not hesitate to contact the author.

= Building

== Requirements
 * gcc 4.1.x
 * STL
 * Magick++ libraries
== Compatability
This sofware was developed and tested on Ubuntu Linux 7.10.  However, it should
be compatible with all operating systems with gcc and Magick++.  

== Configurations
This program was developed using Eclipse and CDT.  The build files included were
automatically generated by these tools.

The Debug and Release folders each contain a separate build configuration.

The debug configuration includes no optimizations, and has debugging symbols
enabled at the highest setting.

The release configuration optimizes using the -O3 and -march=k8 options.  From
the gcc man page describing -march=k8: "This supersets MMX, SSE, SSE2, 3dNOW!,
enhanced 3dNOW! and 64-bit instruction set extensions."

If your cpu does not support the above instructions it is possible that the
release configuration will not run on your system.  In this case please use sed
to remove the -march=k8 option.
Example: "find . -name subdir.mk | xargs sed -i 's/-march=k8//g'"

== Running make
To build a configuration enter either the Debug or Release folder and execute
the following command. "make -k all"

This should produce an executable named cg2raytracer.

= Execution
Execute the built cg2raytracer.  An output will be generated in the current
directory called image.png.  This is the rendering result.  Be certain to move
this file out of the way before rendering another image, or it will be