Rendering Links




This page provides a collection of links to online computer graphics resources, with a specific focus on rendering. It is naturally incomplete. For more information, I recommend the Real-Time Rendering site, the online companion page for the book Real-Time Rendering by Tomas Möller and Eric Haines.

Rendering Systems

OpenGL is certainly the most widely supported standard for real-time, hardware-accelerated rendering. For those systems without an official OpenGL interface, the Mesa 3-D graphics library is freely available.

To use OpenGL, you must create windows on the screen that OpenGL can draw into. I recommend the FLTK toolkit, which works under both Windows and X. The GLUT toolkit is also a popular choice, but it doesn't provide much in the way of interface elements (e.g., buttons, sliders, menus).

The Blue Moon Rendering Tools are a collection of rendering programs which use Pixar's RenderMan interface standard. BMRT is free for academic and non-commercial use, but must be registered for commercial use.

There are a number of freely available ray tracers out there. The most complete include:

  • POV Ray
  • Rayshade
  • RADIANCE is a set of programs intended for the visualization of lighting. It can provide users such as architects and lighting designers with photographic-quality images of a space being designed.

    Image Formats

    Rendering systems generally need to both read and write raster image data. There are numerous image file formats out there (see Wotsit's list for details). I would recommend using one of the formats listed in this section because they are widely supported and there is good source code available for working with them.

    The Tag Image File Format (TIFF) has been around for a while. Sam Leffler's libtiff library provides a convenient way to read and write TIFF files.

    The Portable Network Graphics (PNG) format is more recent. It's arguably more featureful, and there is also a libpng library available. My experience has been that PNG files tend to be smaller than TIFF files.

    The NetPBM software collection supports three related formats: PBM (bitmap), PGM (grayscale), and PPM (RGB color). Due to their particularly simple file formats, they're very easy to read and write. However, they're generally not supported by software packages on the PC and Mac platforms.

    Unlike the previous formats, JPEG is a lossy compression scheme. It was designed for encoding photos; it tends to degrade things like text. The Independent JPEG Group provides a set of encoding/decoding tools as well as a library for manipulating JPEG files.

    To string your images together into a movie, you can grab the Berkeley MPEG Encoder.

    General Resources

    Charles Poynton has written some nice articles that contain a lot of useful information on display gamma and color spaces.

    Paul Haeberli has put together an interesting collection of articles at GRAFICA Obscura. For instance, find out about some unusual applications of texture mapping.

    A nice survey of online resources for non-photorealistic rendering is available from Craig Reynolds.

    To see an example of real-time non-photorealistic rendering in action, try Teddy.

    To render interesting scenes, you'll want some object models to populate the world. Here's a quick list of some sites which offer (mostly polygonal) surface models for download:

  • Avalon
  • Stanford model repository
  • Large model repository
  • 3D Cafe

  • garland@uiuc.edu 
    Last modified: Thu Apr 06 08:55:04 CDT 2000