In this section -- shaders, RIBS, texture-maps, C source, and utilities. Various items of interest will be added as they become available. For now the shaders section is the most developed.

What's on this page?

RIBs, Shaders, Show&Tell

RIBs -- An assortment of RIBs

Shaders -- Off to the wonderful world of shaders.

DSOs -- examples of Dynamic Shared Objects

Display Drivers -- some alternate RenderMan display drivers

ShowAndTell --

Texture-Maps -- TIFF images to be used in your shaders.

Inoise - Integrated Perlin Noise

At the SIGGRAPH 2001 Sketches and Applications, Ian Stephenson presented: Inoise.

This is a DSO shader op for doing Integrated Perlin Noise which should provide better anti-aliasing detail than just pure frequency clamping. Go to the Inoise link for more information, source, examples, and his PowerPoint SIGGRAPH presentation. (Linux users don't forget that you can use StarOffice to read MS Powerpoint slides.)

High Dynamic Range images

Using high dynamic range(HDR) images is a common way of trying to get global information from a set/environment (typically real world but it doesn't have to be). Sometimes this is referred to as Image Based Lighting (IBL). Paul Debevec made this technique very popular a few years ago. Now many studios, such as ILM and DD, are making use of this.

On Paul's most excellent site there are a number of example HDR images and a link to, HDR Shop, a great tool for dealing with HDR images. It also makes making use of HDR images easier with RenderMan rendering. The program only runs under Windows machines.

Simon Bunker has put together a whole bunch of links and information on HDR. So rather than duplicate efforts, check out his site rendermania. Also there you will find some of the shaders that he uses.

Speaking of shaders, there were some that Larry Gritz provided from the SIGGRAPH 2001 RenderMan Course.

Shadermaps: method for Accelerating Procedural Shading

At SIGGRAPH 2001 Thouis Jones, Ronald Perry, Michael Callahan talked about using shader maps to pre-bake the static procedural parts of objects in a scene into texture maps. Then use these maps in addition to just running the lighting part of the shaders to help speed up the rendering times. They talk about their technique and have an example shader in their Technical Report (in both PDF and Postscript).

Stupid RenderMan/RAT Tricks

At Long last the Stupid RenderMan/RAT Tricks (SRT) have a home.

Example C bidings of newer prman primitives


C program for RIB from Application Note 19:
#include <ri.h>

  RtToken type = "cubic";
  RtInt ncurves = 1;
  RtInt nvertices[1] = {4};
  RtPoint P[4] = {{0, 0, 0},  {-1, -.5, 1},  {2, .5, 1},  {1, 0, -1}};
  RtToken wrap = "nonperiodic";
  RtToken width = "width";
  RtFloat nwidths[2] = {.1, .04};

   RiFormat (320, 160, 1);
     RiDeclare ("width", "varying float");
     RiCurves (type, ncurves, nvertices, wrap, RI_P, (RtPointer) P,  RI_WIDTH, &nwidths, RI_NULL);

Any comments or suggestions? Send them to: tal AT renderman DOT org

The RMR is Copyright © 1995-2008 Tal L. Lancaster all rights reserved