Newsgroups: comp.graphics
Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!caen!news.cs.indiana.edu!maytag!mks.com!david
From: david@mks.com (David Rowley)
Subject: Re: Scene Description Standard
Date: Fri, 3 May 91 13:08:23 GMT
Message-ID: <1991May3.130823.1256@mks.com>
Organization: Mortice Kern Systems, Waterloo, Ontario, CANADA
References: <13281@goofy.Apple.COM> <14567@medusa.cs.purdue.edu>

In article <14567@medusa.cs.purdue.edu> bouma@cs.purdue.EDU (William J. Bouma) writes:
>In article <13281@goofy.Apple.COM> turk@Apple.COM (Ken "Turk" Turkowski) writes:
>>The problem with a procedural language (like PostScript) is that
>>the definition of the language specifies exactly how the picture
>>is to be rendered.  Procedural languages generally require a complex
>>parser that is really a compiler that builds expression trees, etc.
>
>   In the case of PostScript this is just not true!  PostScript does not
>   require ANY parsing.  If this shocks you try doing some reading on
>   the subject of "Threaded Interpreters".

	I took the postscript interpreter part of GNU's Ghostscript,
	and hacked up an interface for Rayshade.  It was kind of neat,
	though the Ghostscript code is pretty hard to use.  Saying
	that postscript doesn't need parsing is too kind.  I'd more
	agree with the simpler, original Threaded Language, Forth.

	The bottom line is that a renderer should deal with rendering
	type concerns.  A language only benefits the builder of the
	scenes, not the renderer, thus it can safely be extracted.

	The following pipeline seems reasonable:

	Animation,	  --->   Standard Scene	  ---> Simplification -> Render
	Programmatic		 Format,	       Filters
	Scene Description	 Camera, Lights

	Where the simplification filters would convert the scene description
	into the level of simplicity required by the particular renderer.

>   I have written a TI based animation tool.  It was very easy to write 
>   and it is flexible to do whatever I may want.  The reason I wrote it
>   was I wanted an interactive graphics environment on this HP I was 
>   using.  I got tired of the awkward compile-load-run cycle that the C
>   language requires.
>-- 
>Bill <bouma@cs.purdue.edu>


-- 
     ll  // // ,~/~~\'   David Rowley
    /ll/// //l' `\\\     Mortice Kern Systems Inc.
   / l //_// ll\___/     35 King Street North, Waterloo, ON, Canada N2J 2W9
O_/                      519/884-2251, FAX 519/884-8861, david@mks.com
