Buffy's been around for along time (since summer '99), but the original version was written for OpenStep, and hence only ran on a handfull of machines. The new version lacks the IDE facility, but is totally portable. Buffy (v0.1 portable) basically provides debugging facilities for RenderMan shaders, allowing a shader to be single stepped, and variables to be inspected both across surfaces, and at particular points.

Start Buffy much as you would SLander, specifying a single shader and any parameter values. The '-s' flag renders a sphere rather than a flat plane. The '-r' options sets the size of the window. Though text output still goes to the command line window, all user input is through the UI window.

The UI window will most likly be showing a greyscale representation of the variable 'u'. Clicking in the window will print out the exact values. You can look at other variables by right clicking and selecting them from the menu. Most of these will be either constant or unset, as the shader hasn't been run yet - just initialised. Pressing 'a' or 'd' will adjust the range of the image, so variable values are scaled to fit between black and white.

To run the shader use 'c' to run to completion (or continue, in gdb terms). 'n' will execute the next line of code, allowing the shader to be single stepped. 'r' restarts the shader from the beginning. In order for single stepping to work the shader must have been compiled in debug mode, using the '-d' flag with either slc to Giles. More powerfull execution controls may be available in a future release.

Pressing 'h' Displays a summary of these instructions. 'q' quits.

Buffy can be downloaded for freeBSD, Linux, SGI, and NT.

I presented a paper on Buffy (pdf), and demonstrated the system at the BCS Conference on Digital Content Creation in Bradford, UK (10-13 April 2000).

Ian Stephenson.
DCT Systems
NCCA,Bournemouth University