Software packages that might be useful for CS395 projects

Tools for current graphics hardware

Cg: A (kernel) programming language for modern graphics hardware; a commercial product from NVIDIA.

Brook: A stream programming language for current graphics hardware, written by Ian Buck.
(No information online yet, but I may be able to get access to this system if someone wants to use it).

Chromium. Open-source software for manipulating streams of OpenGL commands, as well as support for routing those streams over networks. Particularly useful for doing scalability experiments on clusters, and for rendering to tiled displays.

Tracing and simulation of graphics hardware

The following tools are useful for statistical analysis of current applications, and for experimenting with enhancements to graphics hardware.

GLT: An open-source OpenGL tracing and playback utility, written by Kekoa Proudfoot. Binaries and additional information are available here.

GLsim: An instrumented software implementation of OpenGL, written by Ian Buck and Kekoa Proudfoot. Useful for gathering statistics, particularly from traces captured by GLT. Software and information is available here.

Mesa -- A high performance open-source software implementation of OpenGL.

Argus: A multiprocessor shared-memory software implementation of OpenGL (note: source code is not publicly available; I'm trying to obtain access to it).

Software ray tracers

Rayshade -- Open source ray tracer, simple to modify

POVray -- Open source ray tracer, harder to modify

BMRT -- RenderMan-compatible ray tracer, only available in binary format

General modeling tools

HDRShop -- tool for editing high dynamic range images.

OpenEXR -- ILM's high-dynamic range file format

Anim8or -- 3D modeling and character animation tool for Windows, written by Steve Glanville.

EQUINOX-3D -- 3D modeler for linux with integrated raytracing renderer.