Thesis Source Code (original) (raw)
This page contains pointers to and information about the source code used in my thesis.
Face Cluster Hierarchy Creation
Source Archive
There is an archive of the GCL library code plus the face cluster modules at http://www.cs.cmu.edu/~ajw/thesis-code/fch-create.tar.gz.
Download it, unpack the archive, and follow the instructions in README.fch.
Anonymous CVS Access
NOTE: Sadly CVS access is no longer accessible. The machines used have been taken out of service. (There is no one left to maintain them against script kiddie attacks. Yay script kiddies.)
You can also access the code through anonymous CVS. Go to http://www.cs.cmu.edu/~ajw/doc/, and follow the instructions under "AnonCVS".
That will get you the core GCL library code. For face cluster creation:
- Check out the modules "make-fch" and "fch-tool" in the reactor directory.
- Install with:
make make-fch fch-tool
Linux or Irix are probably the safest bets for compiling; you may have to make
some changes under other unices. You will need OpenGL or MESA.
Usage
Typing either make-fch or fch-tool with no arguments will give a list of possible flags.
To create an ascii-format face cluster file:
make-fch model_file > model_file.cmf
To calculate the bounding boxes and side-projected areas for the face cluster hierarchy:
fch-tool -calcOBB 3 model_file.cmf
This will write out the file as model_file.mrb, which is a binary format that can be read very quickly by slview.
To view the face cluster file:
slview model_file.[cmf|mrb]
Hit '?' to get a list of key and mouse commands. Briefly: use the right mouse button to adjust the complexity of the model, and 'X' to colour the corresponding clusters different colours. Also, 'V' toggles the display of the cluster bounding boxes, and 'F' the display of the model faces.
The GCL code works with wavefront (.obj) or MGF files plus a few other CMU formats.
I have put a few models in http://www.cs.cmu.edu/~ajw/public/models.
Documentation
There is some source-generated documentation at http://www.cs.cmu.edu/~ajw/doc/.
In particular, see GCL, and the MRModel class. If you want to add support for multiresolution models (either edge-collapse or face-cluster) to your own code, you should start with this class.
Face Cluster Radiosity
Source Archive
There is an archive at http://www.cs.cmu.edu/~ajw/public/dist/rad-fcr-code.tar.gz. Follow the build instructions in the README file to build GCL. Then
- Install the batch renderer with:
make samples.lib
make radiator
- Install the visualisation front-end (you will need the xforms library installed!) with:
make radvis Linux or Irix are probably the safest bets for compiling; you may have to make some changes under other unices. You will need OpenGL or MESA installed. You may need to tinker with the makefile settings in makefiles/config.mf.
Anonymous CVS Access
NOTE: Sadly CVS access is no longer accessible. The machines used have been taken out of service. (There is no one left to maintain them against script kiddie attacks. Yay script kiddies.)
You can also access the code through anonymous CVS. Go to http://www.cs.cmu.edu/~ajw/doc/, and follow the instructions under "AnonCVS".
That will get you the core GCL library code. For the radiosity code:
- Check out the modules "samples" and "rad" in the reactor directory with
cd reactor; cvs checkout samples rad
- Install the batch renderer with:
make samples.lib
make radiator
- Install the visualisation front-end (you will need the xforms library installed!) with:
make radvis Linux or Irix are probably the safest bets for compiling; you may have to make some changes under other unices. You will need OpenGL or MESA installed. You may need to tinker with the makefile settings in makefiles/config.mf.