Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!spool2.mu.edu!sdd.hp.com!zaphod!rpi!uupsi!eye!erich From: erich@eye.com (Eric Haines) Newsgroups: comp.graphics Subject: Re: renderman Message-ID: <1991Jan14.152127.8320@eye.com> Date: 14 Jan 91 15:21:27 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> <1991Jan12.033252.27767@odin.corp.sgi.com> Sender: Eric Haines Reply-To: erich@eye.com (Eric Haines) Organization: 3D/Eye Inc., Ithaca, NY Lines: 42 In article <1991Jan12.033252.27767@odin.corp.sgi.com> robert@sgi.com writes: >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. RenderMan is indeed a scene description language, and a very good one at that. However, to say that it is implementation neutral is not true in all cases. Some of the language constructs require certain algorithms. Understandably, RenderMan reflects Pixar's research developments. For example, the RiMakeShadow() call makes a shadow map (a la Reeves, Salesin, & Cook's SIGGRAPH '87 "Rendering Antialiased Shadows with Depth Maps"), which is a very specific shadowing algorithm developed at Pixar. Support for radiosity, for example, is open-ended and minimal (the "illuminance" statement), probably because not that much research on this topic was done at Pixar at the time. Mostly I like the spec, (certainly it's magnitudes better than something like NFF, that's dead sure,) but it is not fully neutral to what implementation you choose. Some of it implies certain algorithms, and does not easily support others. This is not really a criticism (I'd be amazed if any language ever comes out that is perfectly neutral and can easily accomodate any new algorithms developed), just something that should be made clear. I don't think I'd want to be limited to the spec as a researcher, though it would be a nice starting point from which to build. However, a full implementation of RenderMan will probably get the job done for most people's rendering needs at this point. By the way, has anyone other than Pixar developed any non-trivial implementation of RenderMan (i.e. trivial == scan-line polygons only, no shadows, with all the other features unimplemented)? Just curious. Eric Haines