Blue Moon Rendering Tools 2.4

Part 1: Introduction


revised 27 August 1998


Larry I. Gritz
lg@bmrt.org



This document explains how to use the Blue Moon Rendering Tools (BMRT), which are a set of rendering programs and libraries which adhere to the RenderMan(TM) standard as set forth by Pixar. This document is intended for the reader who is familiar with the concepts of computer graphics and already is fluent in both the RenderMan procedural interface and the RIB archival format. It is not designed to teach the RenderMan interface, but to give the reader documentation on how to use this implementation of the standard. For more detailed information about the RenderMan standard, you should see The RenderMan Companion, by Steve Upstill, or the official RenderMan Interface Specification, available from Pixar. Both of these texts are fully detailed and clearly written, and no attempt will be made here to duplicate the information in these references.

What is RenderMan?

RenderMan is a standard created by Pixar through which modeling programs can talk to rendering programs or devices. It may be thought of as a 3-D scene description format in the same way that PostScript is a 2-D page description format. This standard is hardware and operating system independent. RenderMan allows a modeling program to specify what to render, but not how to render it. A renderer which implements the RenderMan standard may choose to use scanline methods, ray tracing, radiosity, or any other method. These implementation details have almost no bearing on the use of the interface.

The first version of the RenderMan standard described a procedural interface, i.e. the function calls for a library which could be linked to a modeling program. When the procedures are invoked, information is passed to the renderer. Later versions of the RenderMan interface also defined the RenderMan Interface Bytestream, or RIB protocol. RIB provides an ASCII interface to a renderer which supports the RIB protocol.

The Blue Moon Rendering Tools

The Blue Moon Rendering Tools described in this document adhere to the RenderMan standard. The parts you'll most likely use are outlined below:

libribout.a (and libribout.so)
A library of `C' language bindings for the RenderMan procedural interface which results in the output of RIB (both "static" and "dynamic" libraries are provided for most platforms).
rgl
A previewer for RIB files which runs on top of OpenGL. Primitives display as lines or Gouraud-shaded polygons.
rendrib
A high quality renderer which uses some of the latest techniques of radiosity and ray tracing to produce near photorealistic images.
slc
A compiler for the RenderMan Shading Language, which allows you to write your own surface, light, displacement, imager, and volume shaders.

Copyrights & Trademarks

The RenderMan Interface Procedures and RIB Protocol are:

Copyright 1988, 1989, Pixar. All rights reserved. RenderMan is a registered trademark of Pixar.

Pixar's RenderMan Interface Specification document stipulates that you may write modeling programs that incorporate the RenderMan procedure calls or that output RIB, royalty-free, as long as you include the copyright notice above. Their document also allows for a no-charge license for anyone who wishes to write a renderer that executes the Pixar RenderMan procedure calls or RIB requests. Such a license exists for the BMRT.

Please note that all of the Blue Moon Rendering Tools described in this document are:

Copyright 1990-1998 by Larry I. Gritz. All rights reserved.

Licensing Arrangement

This software is not in the public domain, but it is "shareware". This means you can get a copy and evaluate it for free, and keep using it for free if you are a student or noncommercial user. If you decide that you want to use it for commercial purposes, you need to register. Please consult the "License" file that comes with the software for more information. I reserve the right to change the licensing of future versions of BMRT at any time and without notice.

Unregistered users may use the software for evaluation purposes for as long as they want. Unregistered users MAY NOT use this software for commercial gain of any kind, including profiting from any images or animations created by this software. Registered users may distribute any images or animations created by this software in any means desired (including for commercial gain). If possible, each copy should credit me as follows:

	Rendering Software...	Blue Moon Rendering Tools

I understand that this is often not practical (for example, for feature films). I trust you'll do your best to give proper credit where possible.

Nobody, not even registered users, may distribute this software in any way without written authorization from me. This is mostly so that I can ensure quality control and keep track of who is using the software.

Acknowledgments

Many thanks to the early users of my software, especially Daria Bergen, Rudy Darken, Tania Fraga, Dave Florek, Won Lee, several classes of CS-206 at GWU, the many others at the graphics lab at the George Washington University who served as my guinea pigs, and to James Hahn, my advisor. Also a special thanks to Michael B. Johnson of the MIT Media Lab, who not only helped to shake loose some of the last bugs, but who gave me the kick in the butt that I needed to convince me to distribute my software. Finally, thanks to Tony Apodaca of Pixar, for hand-holding me through the licensing process, as well as illuminating some of the more obscure parts of the standard that nobody cares about but us.


This document last updated 27 Aug 98 by lg@bmrt.org

All BMRT components are Copyright 1990-1998 by Larry I. Gritz. All rights reserved.

The RenderMan Interface Procedures and RIB Protocol are: Copyright 1988, 1989, Pixar. All rights reserved. RenderMan is a registered trademark of Pixar.