This page was designed to be viewed in Internet Explorer 4.0 or higher
with a resolution of 800x600 or higher.
|
Links
Contents:
Click on one of the following quick-links to scroll down to a particular
section on this links page of RenderMan resources.
Books
Notes
Web Pages
Forums
RenderMan-compliant Modelers
RIB Export Plug-ins
Translators to RIB
Render farm queuing systems
RenderMan-compliant Renderers
Books:
Several books have been written that cover the RenderMan Interface and
Shading Language. Click on any title to order it through Amazon.
Production Rendering: Design and Implementation
edited by Ian Stephenson
is the first book dedicated to teaching how to write your own RenderMan-compliant (or similar) production renderer.
It includes separate chapters on shader compilers and shader interpreters, and presents a single architecture for encorporating ray tracing and global illumination into a micropolygon framework.
It is written by experienced graphics
software developers including Mark Elendt (Mantra), Rick LaMont (RenderDotC),
Jacopo Pantaleoni (Lightflow), Scott Iverson (AIR), Paul Gregory (Aqsis),
and Matthew Bentham (RenderDrive).
The RenderMan Companion: A Programmer's Guide to Realistic Computer Graphics by Steve Upstill
remains a good place to start learning about RenderMan.
It provides a thorough yet gentle introduction to the RenderMan procedural
interface and shading language. The most common complaint about the Companion
is that it doesn't cover RIB, so it's difficult to work along with the examples
unless you can get a C compiler configured to find your renderer's header files
and libraries. Some people find it easier to manually translate the examples
from C to RIB, usually with the assistance of a reference such as the spec.
Essential RenderMan fast by Ian Stephenson provides a practical
introduction to producing images using a RenderMan renderer, enabling the
novice user to get the most from RenderMan. With plenty of illustrations and
hands-on examples, the author looks at the creation of geometry using RIB
and the C API. He also includes an introduction to shading and the generation
of procedural textures using the RenderMan shading language.
Advanced RenderMan: Creating CGI for Motion Pictures by Anthony A. Apodaca and Larry Gritz
covers the more modern aspects of RenderMan usage. Many things have been
added to the standard since the Companion was published in 1990. Much of
the material presented in this book was derived from the series of SIGGRAPH
course notes (see link below).
Texturing & Modeling: A Procedural Approach, Third Edition by David S. Ebert, F. Kenton Musgrave, Darwyn Peachey, Ken Perlin, and Steven Worley covers
procedural texturing as is often done with RenderMan Shading Language. In fact,
several chapters provide examples written in SL.
The RenderMan Interface Specification provides the formal
definition of the RenderMan Interface standard. It is usually the reference
one turns to in order resolve a discrepancy of interpretations. Still, the
spec is readable and presented in an order that facilitates learning. Version
3.1 (1989) is available in
HTML and
PDF.
The newer 3.2 (2000) version is available in
PDF and
PostScript.
Notes:
Much can be learned about RenderMan by reading notes that are freely available
on the internet.
The RenderMan Newsgroup FAQ, (also available in
Russian and
Japanese)
answers burning questions such as "What is RenderMan?" (in all honesty, a
widely misunderstood concept).
SIGGRAPH course notes cover advanced topics and feature guest lecturers
from industry. Much of the material presented here wound up in the Advanced
RenderMan book. Notes are available from the RenderMan courses at SIGGRAPH
1992,
1995,
1998,
1999,
2000,
2001, and
2002.
RManNotes by Steve May
presents an approach for creating RenderMan shaders in layers.
CMPA301 course notes
from Malcolm Kesson's RenderMan course at Savannah College of Art & Design.
Web Pages:
The following web pages are clearing houses for RenderMan related news,
links, and other resources.
The RenderMan Repository, maintained by Tal Lancaster, has megabytes of
server space dedicated to SIGGRAPH course notes, sample RIB files, shaders,
etc.
RenderMania,
hosted by Simon Bunker, keeps up with the latest industry news.
There's a RenderMan Section at Highend3D
with downloadable tools and links to user pages.
Death Fall
usually has RenderMan tutorials and news (in both
English and
Spanish).
Forums:
User support groups are available on the internet to answer questions and
solve those last-minute problems.
The RenderMan newsgroup on Usenet has been serving the RenderMan community
since 1995. The content level is high in spite of the moderate amount of
traffic. It is currently archived on
Google.
Dot C Software gives the "Post of the Year" award to the newsgroup
article judged to be most helpful to someone writing a renderer. Here is
the archive of past winners:
1997 - Bob Mercier takes the seldom seen "how to" approach in this article
on writing a RIB export plug-in for Alias PowerAnimator (the predecessor of Maya).
1998 - T. Burge gives a thorough treatment on changing the basis of a
bicubic patch, a useful technique for handling multiple bases.
1999 - Andrew Bromage explains the register transfer machine design for
interpreting shaders, an alternative to the popular stack machine.
2000 - With one sentence, Klaus Elmquist Nielsen insightfully points out a
caveat in shader compiler design.
2001 - Stephen H. Westin presents a survey of global illumination
techniques, unravelling the definitions of radiosity, radiance, and irradiance.
2002 - Daniel McCoy explains Hermite patches, complete with RIB examples.
So you already understand the layout of a RenderMan Hermite patch to
facilitate patch meshes, but can you visualize a twist vector?
2003 - Ian Stephenson discusses portability issues between UNIX and Windows.
In particular, he looks at how renderers should handle paths with drive letters and backslashes.
2004 - Questions like "Why does Mr. Johnston's implementation for silhouette edge detection differ from Mr. Saito's?" will often go unanswered, but not when Katsuaki Hiramitsu is paying attention.
2005 - Matthias Baas finds the same bug in three different renderers! Be sure to test your RiBasis function on his example RIB as this is a mistake that's easy to make.
2006 - Olivier Paquet gives three reasons why occlusion culling doesn't always work as well as one would expect.
The RenderDotC Mailing List is the place to go to keep up with the latest
releases and to ask RenderDotC specific questions.
The RenderMan Message Board at Highend3D is frequented by professional
users of tools that adhere to the RenderMan standard. The content here is
mostly about troubleshooting problems.
The Rendering Theory List Server at Highend3D traffics in academic
discussions about renderer design and such. While not specifically geared
towards any rendering interface, this community understands RenderMan and
welcomes high level discussion about it. This is not the place to ask support
or marketing questions about particular products.
RenderMan-compliant Modelers:
The following modelers and animation systems output RIB directly and can
therefore be used immediately with RenderDotC. Other modelers can be made
compatible with the use of a RenderMan compliant plug-in or file converter
as listed in the next two sections below.
Houdini by
Side Effects Software
is a procedural animation system. Only the "Houdini Master" edition includes
compatibility with RenderDotC.
Rhino by
Robert McNeel & Associates
is a NURBS based modeler with numerical accuracy for CAD applications. It
has rudimentary RIB capabilities but see RhinoMan below under Plug-ins.
solidThinking by GESTEL is a parametric surface modeling application for industrial design.
Ayam by Randolf Schultz is the successor of
The Mops. Both are free 3D modeling environments specifically
built for the RenderMan interface. Ayam is Maya spelled backwards (but don't
tell anyone).
K-3D is a
free (as in freedom) 3D modeling and animation system, licensed under the GNU
General Public License.
AL by Steve May is a free (as in free beer) environment for procedural
computer animation said to be similar to the Menv environment used in-house
at Pixar.
Wings 3D is a free polygon mesh modeler inspired by Nendo and Mirai from
Izware. It maintains the geometry manifold at all times, making it well
suited for subdivision surface modeling. The RIB export is said to be improving to support a wide variety
of compliant renderers.
Pixels3D by
Pixels Digital is a general-purpose modeling and animation program for
the Mac.
XFROG by Greenworks Organic Software is specifically designed to model
trees, plants, and other organic forms.
Poser by
Curious Labs focuses on 3D figure design and character animation of human
and animal models.
Flow by
Reptile Labour Project is a particle animation application.
AC3D by Andy Colebourne is a 3D object and scene modeler.
Sced: Constraint Based Scene Design by Stephen Chenney is a modeling program
that makes use of geometric constraints.
Amapi 3D by
Eovia is a polygonal and NURBS modeler that now incorporates subdivision
surfaces and dynamic geometry.
Breeze Designer is a modeling and design tool written primarily for
POV-Ray but also supports RenderDotC.
ShellyLib
by Randolf Schultz is a shareware program to model sea shells and snails.
VTK by Bill Lorensen is an object oriented scientific visualization toolkit.
VMD is a molecular visualization program for displaying, animating, and
analyzing large biomolecular systems using 3-D graphics and built-in
scripting. VMD supports computers running MacOS-X, Unix, or Windows, is
distributed free of charge, and includes source code.
RIB Export Plug-ins:
The plug-ins in this section can be used to integrate modelers and animation
systems with RenderDotC.
Maya:
Mai-Tai by
Dot C Software is often sold in conjunction with RenderDotC.
MayaMan by
Animal Logic converts Maya shaders to SL.
MTOR is part of
Pixar's
"Artist Tools" suite.
Houdini:
HaRM by
DCT Systems
is actually a RenderMan plug-in (procedural program) that
launches Houdini's hscript to generate geometry at render time.
Softimage:
SoftMan was
Animal Logic's first RIB export plug-in.
SoftRman by Chris Rogers is the successor of
SoRender by David Walvoord.
3D Studio Max:
MaxMan by
Animal Logic exports both RIB and SL code.
DoberMan is a free collection of scripts which allows you to save your MAX scenes as a RIB files.
Lightwave 3D:
LightMan by
Timm Dapper is a collection of Lightwave plug-ins which enables
one to interface with RenderMan-compliant renderers such as RenderDotC.
LtoR has an English user interface but most of the documentation is in Japanese.
Light-R by Felipe Esquivel is a Lightwave 7 plug-in for Windows/Intel. It exports
camera, lights and polygons into a sequence of RenderMan RIB files.
Rhino:
RhinoMan by Brian Perry is a rendering plug-in that provides a user
interface for your favorite RenderMan-compliant renderer.
Hash's Animation:Master:
MasteRIB by Nicholas Yue is a collection of plugins to generate RIB and shaders. Due to the design of Animaton:Master, this has to be done with three different plugins. The first one available is for the generation of the main RIB file itself. The other two plugins will be for surface and light shaders.
Translators to RIB:
These programs convert various 3D file formats and convert them to RIB for use
with RenderDotC.
PolyTrans by
Okino Computer Graphics can convert just about any 3D file format to RIB.
3DS2RIB by Alex Segal converts 3D Studio (.3DS) files to RIB.
CeX3D by
Hardcore Processing converts in any direction between Lightwave 3D,
Unreal Editor, and RenderMan.
iv2rib by
Hammer Visual Engineering converts Inventor and VRML files to RIB.
Pov2Rib by Christian Vogelgsang for POV-Ray.
l2rib by Julian Fong converts
LDraw models to RIB for the purpose of rendering Legos.
Render farm queuing systems:
If you're running RenderDotC
on a render farm consisting of more than a few computers, then you'll want
to consider one of the following programs to distribute the jobs and
ensure maximum throughput.
Rush by Greg Ercolano
is distributed network render queuing software catered to large and small computer graphics production and post-production facilities.
BORG Open Rendering GUI is a network rendering system developed by TAUTOLOGIX for RenderMan compliant renderers. It's not just for BMRT anymore!
DrQueue by Jorge Daza
is a tool to distribute shell based tasks such as rendering images on a per frame basis. It is distributed under GPL.
renderFarm 2 by Alexei Puzikov is appropriate for a small production house or a 3d hobbyist or a large VFX facility.
Portable Batch System is a flexible batch queuing system developed for NASA in the early to mid-1990s. It operates on networked, multi-platform UNIX environments.
qube! Remote Control developed by Pipelinefx, is an enterprise-class renderfarm management system designed to handle both large and small renderfarms.
Gridware by Sun Microsystems enables enterprises to build grids that make the employees more productive. Enterprises can monitor and select the optimal usage of computer resources on most commercial operating systems and platforms.
Alfred
is part of
Pixar's
"Artist Tools" suite.
LSF by Platform Computing helps manage and optimize expensive and complex IT environments delivering higher IT efficiency, faster time to business results, dramatically reduced cost of computing and guaranteed service execution.
Smedge allows you to queue and distribute renders on Windows NT. It provides a handy graphical interface to launching renders.
Muster by Virtual Vertex manages complex and cross platform render farms for the best 3D and 2D packages available on the market.
Deadline by Frantic Films is a hassle free method to both administer and render on Microsoft Windows-based render farms of all sizes.
RenderMan-compliant Renderers:
Below are all of the renderers that adhere to the RenderMan
standard that have ever been published (or are expected to be published).
Many are no longer available but are included for historical reference.
The renderers are listed in chronological order of first public release.
The DGS Renderer
Vendor: Digital Arts
Primary Author: Phil Beffrey
Year of release: 1986 (RenderMan-compliant in 1987)
Status: Discontinued
The first RenderMan-compliant renderer predated the RenderMan spec by a
year. Digital Arts' entire package was called "DGS" for Digital Graphics
System. The renderer itself didn't have
any particular name. The first version, which used an A-buffer style
architecture and did shadows with volumes, was first sold in 1986. It was
then updated to a world space subdivision (Reyes style) algorithm using
shadow maps. This second version was made RenderMan-compliant within months
after the spec was published in 1987. It ran on several different processors
(680xx, x86, T800 transputer) under DOS. On transputers, the DGS renderer
parallelized nicely by splitting up rendering by the bucket.
Because DGS was discontinued before the World Wide Web came into existence,
there is little information online about this renderer other than these two
Usenet articles by Chris Williams.
PhotoRealistic RenderMan
Vendor:
Pixar
Primary Designers: Loren Carpenter, Rob Cook, Ed Catmull, Pat Hanrahan
Primary Implementors: Mickey Mantle, Tony Apodaca, Darwyn Peachey, Jim Lawson
Year of release: 1989
Status: Current
This is the renderer that is often called "RenderMan" by mistake. Those that
know RenderMan is a spec refer to Pixar's renderer as "PRMan".
The history of PRMan begins in 1981 when Carpenter wrote the Reyes
renderer at Lucasfilm. Reyes later became a testbed for research and
development of hidden surface removal algorithms (hiders). A friendly
competition ensued between Cook, Carpenter, and Catmull to come up with
good hiders. Cook came up with a stochastic hider, Carpenter integrated
his discrete A-buffer architecture, and Catmull offered an analytic hider.
Hanrahan was largely responsible for designing and circulating the
RenderMan Interface specification for review. Once finalized, Mantle,
Apodaca, Peachey, and Lawson converted the R&D code into
a software product that adhered to the standard.
SunART (part of SunVision toolkit)
Vendor: Sun Microsystems
Primary Authors: Doug Kubel, Rich Goodin, Roy Hashimoto
Year of release: 1990
Status: Discontinued
The renderer that became SunART was developed by Kubel and Goodin at Sun's North Carolina research center and
originally ran on the TAAC
accelerator in 1988. It then migrated to become
part of the SunVision suite, which ran on Sun workstations with or without
TAAC accelerators.
By the time SunVision was released in 1990, Hashimoto had
substantially modified SunART and made it more than a minimally
RenderMan-compliant package.
While the emphasis of the SunVision toolkit was scientific
visualization, the SunART renderer had general RenderMan functionality.
In 1992, the SunVision product line was discontinued and sold to a
scientific visualization company. They just wanted the volume renderer and
visualization toolkit, so they didn't pursue distributing SunART. Sun's
North Carolina campus closed in 1994. Only one member of the SunVision team
is still at Sun.
The Vision Project
Vendor: University of Erlangen
Primary Authors: Philipp Slusallek, Thomas Pflaum, Hans-Peter Seidel
Year of release: 1994 (Available to "selected institutions")
Status: Current
The Vision architecture is that of a testbed for students and faculty to
evaluate rendering and lighting algorithms. Object oriented design is
employed to encapsulate the physical based models and define interfaces
between the main subsystems. Only the physical aspects that are common
to all rendering techniques are found in the architecture itself.
While the renderer itself is only available to qualified educational
institutions, the authors have documented much of their work in published
papers.
Blue Moon Rendering Tools
Vendor: Exluna (original vendor was Blue Moon Systems)
Primary Author: Larry Gritz
Year of release: 1994
Status: Discontinued
BMRT's rendrib was once the ray tracer used in the graphics lab at George
Washington University. Between 1992 and 1993, radiosity support and an SL
compiler were added. BMRT was first distributed by FTP in August, 1994.
Because of its liberal licensing terms, BMRT remained a popular choice
among students and hobbyists until it was discontinued in 2002 as part of
a settlement with Pixar.
RenderDotC
Vendor: Dot C Software, Inc.
Primary Author: Rick LaMont
Year of release: 1996
Status: Current
Now the second oldest renderer on this list that is still widely available,
RenderDotC emphasizes speed. It employs the Reyes architecture and
compiles shaders all the way to machine language.
Powder (formerly "Photon" and "Ribbit!")
Vendor: Pixel Constructs (formerly "Eidolon")
Primary Author: Steve Keppel-Jones
Year of release: 1997
Status: Discontinued
This renderer may be best remembered for its frequent name changes. It
appeared to use a divide and conquer approach to dice curved primitives
recursively, and then proceeded to shade and sample in bucket order.
Initially, Powder ran on a wide variety of platforms. The Windows version
had a GUI with a rendering progress meter.
Keppel-Jones retained rights to Powder when Pixel Constructs closed,
and may revive it at some point.
RenderDrive
Vendor: Advanced Rendering Technology
Primary Designer: Adrian Wrigley
Year of release: 1998
Status: Current
RenderDrive is unique among the renderers on this list because it is primarily
implemented in hardware. Billed as the first ray tracer on a chip, one or
more RenderDrive appliances sit on a network with the client computer. RIB
files may then be sent to it over the RenderPipe RIB interface. A smaller
version called
PURE
puts 8 processors on a PCI card.
Mirage 3D
Vendor: Mirage 3D
Primary Authors: Timm Dapper, Bastian Baranski, Tobias Ganzow
Year of release: 1999
Status: Unfinished
Mirage 3D is built upon a raybundle acceleration scheme for ray tracing.
Users may define new primitives through the RiGeometry backdoor in the
RenderMan standard.
Support for caustics has been temporarily discontinued while Dapper
investigates several modes of monte-carlo ray tracing.
Mirage 3D has become an open source project.
Unnamed Reyes renderer
Primary Author: Adrian Skilling
Year of release: 1999
Status: Unfinished
Here is some sample C++ code for implementing the Reyes algorithm. It partly
conforms to the RenderMan standard and allows programmable shading in C++.
The code was written to experiment with Reyes and not as a robust renderer.
FreeMan
Primary Author: Tim Moore
Year of release: 1999
Status: Unfinished
The "embryonic beginnings" of an open-source
implementation of the RenderMan standard, FreeMan supports a subset
of the RenderMan Interface entry points with an eye towards future
compliance. It makes use of counted pointers to avoid explicit deletes.
GMAN
Primary Author: John Cairns
Year of release: 1999
Status: Unfinished
Many things were planned for this GNU Library Public License (LGPL)
RenderMan-compliant renderer including ray tracing, radiosity, and z-buffer
rendering. In 2002 Cairns announced his "semi-retirement" from the project,
leaving it in need of a project manager and development team.
Angel
Vendor: DCT Systems
Primary Author: Ian Stephenson
Year of release: 2000
Status: Current
Angel appears to render RenderMan primitives quickly by tessellating them
and scan-converting the resulting polygons. The "stereo" hider renderers
left and right eye images in a single pass. It runs on OpenStep, freeBSD,
Windows NT and SGI.
AQSIS Rendering System
Vendor: AQSIS
Primary Author: Paul Gregory
Year of release: 2000
Status: Current
Based on the Reyes architecture, AQSIS has a feature set that includes
many of the more useful optional capabilities. It runs on Windows NT 4.0
and Windows 95/98/2000. AQSIS has become an open source project.
AIR
Vendor:
SiTex Graphics
Primary Author: Scott Iverson
Year of release: 2000
Status: Current
The most unique thing about AIR is that it is written in Modula-2.
Another unique quality is that it can motion blur rotations with curved
streaks rather than straight. It implements a limited form of
deformation shaders and introduces the concept of a procedural shader.
The older DOS version called
Siren
is still available.
3Delight
Primary Authors: Franck Diard, Patrick Fournier
Year of release: 2000
Status: Current
A Reyes renderer that adheres to the RenderMan standard.
It is currently being distributed free of charge, with virtually no user
restrictions.
Tempest
Vendor: Pixels
Animation Studios
Primary Author: Andrew Bryant
Year of release: 2000
Status: Current
Tempest integrates the Reyes architecture with a ray server in one
application. While RenderMan compliance is not 100% guaranteed, Tempest
does handle the RIB files exported from PiXELS 3D. It currently runs on
Mac OS and Intel Linux.
Entropy
Vendor: Exluna
Primary Authors: Larry Gritz, Craig Kolb, Matt Pharr
Year of release: 2001
Status: Discontinued
Entropy was descended from BMRT, and shared code in common. It added a
scanline front end while maintaining ray traced reflections, refractions,
shadows, and caustics. Entropy was at the center of a patent infringement
lawsuit filed by Pixar. NVIDIA acquired Exluna in 2002 and announced that
a settlement had been reached, resulting in Entropy being taken off the
market along with BMRT.
The Believe Renderer
Vendor: Believe, Inc. (formerly Believe.com)
Primary Designer: Affie Munshi
Status: Canceled
The hardware renderer that almost was... Believe is included here because
of the number of man-hours invested in the project. Their Santa Clara, CA
office once housed upwards of 100 employees, among them both hardware
and software engineers. The renderer was to incorporate ray tracing
and global illumination, accelerated by custom ray tracing hardware.
Higher level tasks were to be done in software. Believe closed their
doors in 2001 after failing to obtain an additional round of financing.
Pixie
Primary Author: Okan Arikan
Year of release: 2003
Status: Current
Pixie is an open source project hosted at SourceForge. It supports ray
tracing as well as Reyes style scan line rendering. The scan line front-end
can also be piped to OpenGL to take advantage of graphics hardware while
still providing fully shaded and filtered images.
jrMan
Primary Author: Gerardo Horvilleur
Year of release: 2003
Status: Current
jrMan is the first known Reyes implementation of the RenderMan standard
written in Java. The authors strive to make the source code easy to read
so that others can understand how Reyes works and experiment with it.
The source is open and hosted by SourceForge.
Project JRMan
Vendor: Voodoo Software
Primary Author: Robert Speranza
Status: Unfinished
The goal of Project JRMan is to develop a commercially viable
photorealistic rendering software package that implements 100% of the
RenderMan specification.
Presumably the "J" stands for "Java" since a Java binding of the RenderMan
Interface is central to the project.
This work is being monitored by Professional Engineers Ontario for the
purpose of qualification for an engineering license.
OpenRender
Primary Author: Juvenal A. Silva Jr.
Year of release: 2001
Status: Unfinished
An open source renderer that aims to comply with the RenderMan Interface
version 3.2. Silva envisions raytracing and radiosity on demand from the
shading language.
3D Graphics Sites
3DSite
Avalon
Creative Planet
Creative Planet Home
Design In Motion
EditorsNet
VFXPro
Production
vfxhq
KwMap
|