Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!elroy.jpl.nasa.gov!decwrl!sgi!shinobu!odin!texas.asd.sgi.com!robert From: robert@texas.asd.sgi.com (Robert Skinner) Newsgroups: comp.graphics Subject: Re: renderman Message-ID: <1991Jan12.033252.27767@odin.corp.sgi.com> Date: 12 Jan 91 03:32:52 GMT References: <1992@m1.cs.man.ac.uk> <2490@motcsd.csd.mot.com> <1991Jan7.143225.10246@pyro.ei.dupont.com> <240@coplex.UUCP> <2528@motcsd.csd.mot.com> Sender: news@odin.corp.sgi.com (Net News) Reply-To: robert@sgi.com Organization: Silicon Graphics Inc., Advanced Systems Division Lines: 62 In article <2528@motcsd.csd.mot.com>, lance@motcsd.csd.mot.com (lance.norskog) writes: |> dean@coplex.UUCP (Dean Brooks) writes: |> |> [ My deathless prose deleted ] |> |> >Excuse my ignorance of the subject, but is Renderman a commercial only |> >library? |> >... |> >There are several raytrace libraries |> >available, but few live up to the photorealism that Renderman has |> >been proven to produce. |> |> Renderman is not a ray-tracer. No, sorry; once again from the beginning: Renderman is a scene *specification* interface. It is independent of and separate from the actual rendering algorithm. Renderman provides a powerful way of specifiying scene geometry, textures, special effects such as motion blur and reflection or environment mapping, camera effects, and filtering. Anyone may implement any kind of renderer that complies with the Renderman inteface: realtime, scanline, ray tracer, or crayons. A render may choose not to implement portions of the specification. For example, a realtime renderer might not implement filtering for antialiasing. A scanline renderer might not implement reflection or environment mapping. Once again, in summary: Renderman is a scene description language. Renderman is not a renderer. |> It uses the Reyes (render everything you |> ever saw) algorithm. This is described in various SIGGRAPHs from the |> mid-80's. I haven't studied it, but apparently the algorithm is to |> break all elements of the scene into "micro-polygons" smaller than |> a pixel. Then, apply radiosity, ray-tracing, and arcane tricks |> to the resulting humongous collection of tiny graphics chunks. |> |> Since everything is smaller than a pixel, simple algorithms and |> approximations suffice where complex algorithms don't work very well |> on larger objects. Also, the resulting dataset partitions well over |> parallel processors. |> |> Lance What you are describing is a Renderman compliant renderer that Pixar sells. You summarize it pretty well, except that there is no ray-tracing or radiosity in the Reyes implementations described at Siggraph. Instead, the talented people at Pixar use a host of "arcane tricks" (like reflection mapping) that simulate things that ray tracers do (like reflections). If you look closely at Reyes images, like the one in Siggraph Proc '87, you will see reflections, but not reflections of reflections. Robert Skinner robert@sgi.com The better is the enemy of the good.