DOWNLOADING: Note that OpenGL *binaries* are available for all sorts of platforms. It's *source* that's hard to get. All you need for ps1 is the binaries, so don't worry about installing Mesa (the open-source reimplementation of OpenGL) for this ps if you have trouble with it. For Windows, our text recommends the following (p. 818): OpenGL libraries (.dll, .lib and .h files): ftp://ftp.microsoft.com/softlib/mslfiles/opengl95.exe GLUT: http://reality.sgi.com/opengl/glut3/glutdlls.zip The .exe is a self-extracting archive (just run it); the .zip can be unpacked using WinZip (free download off the 'net from http://www.winzip.com) For the Mac: (thanks to Andrew) http://developer.apple.com/opengl/ Get the OpenGL SDK 1.2 <--includes source and libs. LINUX: Steph just pointed out a potential quirk with compiling under linux with Mesa: you *must* have both these declarations in your compilation statement: -I/tools/cs/Mesa-3.4/include -I/tools/cs/Mesa-3.4/include/GL because "gl.h" is in the search path /tools/cs/Mesa-3.4/include/GL, but it includes another header, namely "glext.h," but it includes it in a silly manner-- namely by looking for "GL/glext.h", which means that /tools/cs/Mesa-3.4/include must *also* be in the header search path. James has this info on his graphics webpage (see links at bottom of course homepage), as well as a sample makefile that people can grab. OUTPUT: (thanks to Aditi) To dump a screen window to a file: xwd -out filename Use xwud to "undump" it. Use xpr to turn it into, say, postscript: xpr -device ps {-rv -portrait} -o filename.ps filename The {} are possibly useful options.