Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uwm.edu!linac!att!ucbvax!ecs.oxford.ac.uk!u87rpb From: u87rpb@ecs.oxford.ac.uk Newsgroups: comp.graphics Subject: Re: Scene Description Standard Message-ID: <9105081606.AA03837@uk.ac.oxford.ecs.booth18.ecs> Date: 8 May 91 16:06:07 GMT Sender: daemon@ucbvax.BERKELEY.EDU Lines: 31 David Rowley wrote: > I took the postscript interpreter part of GNU's Ghostscript, > and hacked up an interface for Rayshade. I've got a half finished Forth interpreter which I added to the PRT ray tracer that was posted at the end of last year. It's one of the easiest languages to parse (as has been mentioned) whilst at the same time allowing parametric definitions for geometry and texture (and whatever else you might need). To save time parsing, I decided that the Forth code should be converted *once* into a byte stream (a la RenderMan) which could be interpreted very quickly by the renderer itself. The main reason for this was to prevent backtracking through the (ASCII) source whilst rendering, and also to prevent duplicate effort in a parallel environment (there's no point having 50 Sun's all doing a parse job on the same program). When the renderer itself starts, the program is first interpreted to build the object database, and also to insert hooks for procedural texturing. If an object in the database has a hook for texturing, that `word' is then called with the relevant object parameters on the forth stack whenever that object is intercepted. I've not done any work on this since January, but it sounds like a sound idea, so it's definitely something that I'll carry on with next time I have some spare time... Ray.