Sketches/Papers: High-quality Hacks

There were a couple things at this year's SIGGRAPH which, while of no immediate use to us, had very high hack value. Here are a few of them.

RenderMan for the PS2
Ian Stephenson from Bournemouth University ported his RenderMan implementation to the PS2. In order to get good performance, the way he implemented shaders is that the shadeops are dispatched by the CPU, but implemented on VU1. This is great for performance, since the VU1 is damn fast, but not so great for implementing things like, oh, the texture call -- since the VU1 has only 16KB of memory. As a result, his implementation is absolutely useless despite being quite fast!

He re-implemented the noise function in RMan using new Perlin noise (as presented last year), and in fact optimized the implementation to use a polynomial approximation instead of the look-up table in the paper.

However, the coolest thing about this sketch -- and the reason it has such high hack value -- is that it is really, really fast. The implementation on the VU1 means that even without the fancy quad buffering that most games use, it can draw a lot of micropolygons. He was showing the most interesting shader he had running on it -- a procedural, fully anti-aliased noise pattern -- on the teapot. He was getting 2-3 frames per second even though this was a real RenderMan implementation with the surface having been diced down to micropolygons before drawing (i.e., the GS unit was drawing multiple polygons per pixels). That's on the order of 1/3 of a million polygons per teapot, procedurally shaded and fully anti-aliased. Before this sketch, I never would have thought of dicing down to micropolygons as a valid approach on any hardware.

Paper: Kaleidoscope as Professional Tool

There's been tons of work the last few years involving the "BRDF" -- Bidirectional Reflectance Distribution Function -- of surfaces, that is, the light emitted in every direction as a function of the light received from each direction. To measure the BRDF, there have been a variety of rigs built, usually involving moving a camera on one arm radially around the object being measured while moving the light source on another.

Ken Perlin had the great thought that there already exists a simple device for looking at an object from many viewpoints at once -- the kaleidoscope. He actually rigged up a kaleidoscope with a beamsplitter so that he could shine a projector into it, illuminating the object from many directions; and capture, digitize, and analyze the return image, enabling him to capture the information without having any moving parts. What a fine hack!

The full title of this paper is "Measuring Bidirectional Texture Reflectance with a Kaleidoscope" by Jefferson Han and Ken Perlin, from New York University.

Emerging Technologies: High Dynamic Range Monitor

One of the themes of the last several years has been the acquisition and use of high-dynamic-range images in computer graphic lighting. However, there hasn't been any direct way to view these images; HDRShop, the most common HDR application, allows mapping the gamut down to something your monitor can display.

However, a bunch of guys in BC came up with a couple ways to do so. The one they were showing at the emerging technologies area was a projector shining into the back of an LCD display. The new DLP projectors have about 2^10 intensity levels per color component, but due to software restrictions they were only getting 2^8. However, since the additive light from the project was effectively being multiplied by the transmissiveness of the LCD display -- also capable of 2^8 levels per color component -- they got a wider range (according to their materials, they obtain a 60,000:1 contrast ratio).

The problem with the displays that they were showing is of course the space and tolerances required to rear-project onto an LCD display accurately. However, the new version they're developing will use a lower-resolution tri-color LED panel immediately behind the LCD panel. The spatial resolution will come from the LCD, and as in the current system, the brightness will come from the multiplication of the two intensities.

They claim that their brightest pixels are 30 times brighter than an LCD or CRT, which is quite believable; their displays definitely had the intense colors that are hard to get outside of a theater projection. However, they also claim that their blacks are 10 times blacker, which frankly didn't seem to be the case in the units they were showing.

For people who have regular need of visualizing their HDR images, these things should be pretty cool. For the rest of us... well, LCDs are pretty nice.

This demo was developed by Sunnybrook Technologies, www.sunnybrooktech.com.