[comp.sys.amiga] RenderMan Standard

sutherla@qtp.ufl.edu (scott sutherland) (04/04/89)

	There was some discussion about 8 months ago on comp.graphics on
something referred to as the RenderMan interface developed by Pixar. It
was described as an interface between solid modeling programs and rendering
programs. Some details were given as to what is covered were disclosed. I 
essentially blew it off at the time.
	Now, in the graphics supplement of the April issue of BYTE, 
following the poor representation of the Amiga (including non-Amiga (e.g.,
IBM 4-color) pics credited to the Amiga and the worst ray-tracing pic I've
seen to date on the cover), is a GOOD article detailing the RenderMan 
interface. At first I was skeptical and felt, since it was covered in
BYTE, that it would be another IBM biased article. I was wrong.
	After reading this article, my toes started to tingle and I got this
excited feeling inside. I thought, "this is exactly what the Amiga 3-d
graphics modelling and animation community needs"! We have an IFF standard,
and an SMUS standard. What the 3-D community has not had is a consistent
interface for all the diverse 3-D modelling and rendering packages available
today. Each object format is different, since most modellers are associated
with a specific renderer, and none of them are directly compatible. One 
valiant attempt to cure this plague is Syndesis' Interchange. While this
program is a must for anyone using more than one modeling package, it is 
NOT a standard, it is simply a vehicle for converting one format to another.
This essentially accomplishes the same goal as the Renderman interface; to
allow the user to integrate the "best" modeler for his/her purpose with the
"best" renderer for the project at hand. However, Interchange is NOT perfect
and a new module must be written for each new product that comes out.
	What Pixar is trying to do with Renderman (as is described in the 
BYTE article) is to set a standard which will allow objects to be given
attributes which surpass even the most advanced hardware available today. 
This way, as new technology is developed, it will be able to use the same
standard. Thus, an object can be given all the attributes desired and 
ported to any renderer.A given piece of software, such as Sculpt-Animate,
would only use those attributes which it is capable of rendering. For 
instance, a sphere is defined to be quartz and have a "roughened" surface.
SA would ignore the refraction information and the texture mapping, whereas
Turbo Silver would be able to use both of these. Videoscape 3D would 
interpret the quartz as a transparent "color" but ignore the index of 
refraction and texture data. 
	The major software developers (Byte-by-Byte, AEGIS, and others) got
together to agree on an ANIM standard (although the players are as different
as snowflakes). So why can't Byte-by-Byte (SA-3/4D), AEGIS (V3D/Modeller),
Impulse (TurboSilver), Hash Enterprises (Animator Series), the Forms in 
Flight II people (name?), Octree (Caligari) and all the others get together
and accept the RenderMan interface as THE IDEAL 3D graphics interface for
the Amiga, the premiere modeling personal computer? This would, in my humble
opinion, be a major step for the Amiga to gain more respect from the 
general computer community. And we would be in some impressive company. 
According to the comp.graphics article, companies already endorsing the 
RenderMan interface include: Apollo, Ardent, DEC, MIPS Computer Systems, 
NeXT, Prime, Stellar Computer, Sun Microsystems, Sympolics Graphics Div.,
Alias Research, Autodesk, Digital Arts, Intelligent Light, Synthesis 
Software Solutions, Industrial Light & Magic, Pacific Data Images, 
R/Greenberg Associates, Thke Analytic Sciences Corporatin, and Walt Disney
Corporation. Although I am only familiar with a few of these names, the
ones I do know about are BIG (e.g., IL&M, Disney, Apollo, SUN). 
	I would like to know the opinions of other, more knowledgeable
persons than I (Chuck M., Leo S., and others). I wouldn't mind EMAIL 
responses, but I feel that this is a topic important enough for all to 
follow. 
	One last word. If this standard is implemented for the Amiga, 
transition to the new Commodore and Impulse graphics enhancement cards
would be almost painless!

					Thanks,

						Scott

bradch@microsoft.UUCP (Bradford Christian ms1) (04/06/89)

I have a copy of The RenderMan (tm) Interface specification right here
in front of me.  I think everyone writing graphics programs should
have a copy so I urge you all to send $15 to:

	Pixar
	3240 Kerner Blvd.
	San Rafael, CA 94901
	Attn: RenderMan

	(415) 258-8100
	Fax: (415) 459-4297

The specification is a 100 pages of mostly C function specifications with
some general graphics info mixed in.  It is a fairly technical document,
but anyone writing a ray-tracer shouldn't have any problem reading it.

	BradCh

STD. DISCLAIMER: I have nothing to do with Pixar; this message has nothing
to do with Microsoft; I'm sorry AmigaBASIC sucks...		***    / 
						    Back by    * | *  /
						popular demand */|\* /
								***\/

rsilvers@hawk.ulowell.edu (Robert Silvers) (04/06/89)

In article <488@orange6.qtp.ufl.edu> sutherla@qtp.ufl.edu (scott sutherland) writes:
>
>	After reading this article, my toes started to tingle and I got this
>excited feeling inside. I thought, "this is exactly what the Amiga 3-d
>graphics modelling and animation community needs"! We have an IFF standard,


     I suggested to the president of Byte by Byte that Sculpt-4D should
generate RenderMan output files.  (I know it could never trace RenderMan
input files!).  He said that he will not implement it unless he can get
paid for it, and that there is not enough intrest in it to increase the
sales of Sculpt.  There may be a Mac version thought.

     I personally think it would be great.  I could edit objects with
Sculpt, upload them to our Pixar, and than trace them very fast.  We
need a standard like this and must insist on it.  We have too many
different formats already and interchange is just a temporary fix.  Please
call up Byte by Byte, and the other companies and ask for RenderMan.

							--Rob.


Robert Silvers.                               I'm the NRA. 
Box #1003 University of Lowell.                                   
Lowell Ma, 01854                              (508) 452-5000 x2233                    

ewhac@well.UUCP (Leo L. Schwab) (04/07/89)

In article <12642@swan.ulowell.edu> rsilvers@hawk.ulowell.edu (Robert Silvers) writes:
>     I suggested to the president of Byte by Byte that Sculpt-4D should
>generate RenderMan output files.  [ ... ]

	There is a problem with this:  There is no Renderman *file*
specification.  Unless I'm very much mistaken (and I probably am), the
Renderman spec simply says that, if you're writing a renderer, thou shalt
name thy functions this and they shall accept these parameters and they
shall do these things.  This implies that, currently, the only way to
express a Renderman scene portably is by C source code.

	I'll have to read my copy of the spec again to be sure.

	(It'd be kinda neat to have renderman.library in the LIBS: directory
for 1.5.)

_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
Leo L. Schwab -- The Guy in The Cape	INET: well!ewhac@ucbvax.Berkeley.EDU
 \_ -_		Recumbent Bikes:	UUCP: pacbell > !{well,unicom}!ewhac
O----^o	      The Only Way To Fly.	      hplabs / (pronounced "AE-wack")
"Work FOR?  I don't work FOR anybody!  I'm just having fun."  -- The Doctor

shf@well.UUCP (Stuart H. Ferguson) (04/08/89)

It's always fun to be excited about things, but I don't think
RenderMan will unite the Amiga 3D commumity real soon.  If I
understand it correctly, it has no associated RenderMan file
format.  Instead it is a specification of how a rendering engine
will talk to the outside world -- specified in the document as
function calls though I suppose they could be anything.  The
interface is real low level, so rendering your scene will require
programming in some language or other.  In fact, part of the 
document is a spec for the RenderMan "shader" language, a 'C'-like
language with privatives for computing lighting and reflection
models and a whole lot more.  (The things that Pixar does with
custom shaders boggles the mind.)  So at the very least, a
RenderMan rendering system will need a shader compiler.

RenderMan might go a long way towards unifying alot of the 
varied jargon that comes with each renderer, though.  Each 3D 
program seems to have its own idea about what a color is, what
index of refraction is and so on.  If developers followed the
RenderMan conventions for these terms, then users might start to
see some correlation between the parameters in the requesters 
and some sort of "reality" (the Renderality).

The other aspect of RenderMan that's rather off-putting for 
a viable Amiga standard is that it's so *COMPLEX*.  The minimum
renderer is far beyond what we have on the Amiga today.  Just
coming up to that minimum level will be hard enough, let alone
trying to be RenderMan compatible.

These were my impressions after browsing the RenderMan doc and
having some extended discussions with Those Who Know More Than I
About RenderMan, so I may have it all backwards.

RenderMan is a registered trademark of Pixar.
-- 
		Stuart Ferguson		(shf@well.UUCP)
		Action by HAVOC

karsh@trifolium.SGI.COM (Bruce Karsh) (05/11/89)

In article <11262@well.UUCP> ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab) writes:
>
>	There is a problem with this:  There is no Renderman *file*
>specification.

I have a real old version (V3.0 May 88) of the RenderMan Interface
spec.  It says in the introduction:

	A byte stream representation of the RenderMan interface will also
	be defined in a separate document.  This byte stream is meant to
	serve as an external file format and network transport protocol
	for passing information between modeling systems and rendering
	systems.

Does anybody know if this document is available?
--

			Bruce Karsh
			karsh@sgi.com

In fact men will fight for a superstition quite as quickly as for a living
truth - often more so, since a superstition is so intangible you cannot get
at it to refute it, but truth is a point of view, and so is changeable.