From: evenson@hitl.washington.edu (Mark Evenson)
Subject: Re: TECH: VR and Fractals
Date: Thu, 27 Feb 1992 05:55:55 GMT
Message-ID: <EVENSON.92Feb26215555@jabberwock.hitl.washington.edu>
Organization: R+D Hipsters @ virtual HITLab, Ithaca



In article <1992Feb27.035447.15123@u.washington.edu> Fernando Diaz 
<neuron@hitl.washington.edu> writes:

     Hello fellow VR explorer,

      Here at the HITLab we do have various programs that generate custom
   fractal designs.  I have not seen anyone traverse a 3D fractal image using
   the eyephones, but it sounds like it would be great!  One of our PD pc based
   factal programs is called "FRACTINT", and it seems to generate a type of 3D
   image from the 2D fractals.  I don't think we have the integration between a
   high speed fractal generator and our renderer.  This would of course have to
   run on our Silicon Graphics 320 workstation.  

Yeah.  When I was Fab (i.e. interning at the HITLab this summer), I wrote a
program that dumped a fractral tree into a Swivel3D file, all in ASCII
text.  You could then import it into VPL's BodyElectric, grab a minimal
physics, and voila! transverse a fractal.

Of course there are problems here.  My rule was very simple:

1)	Start at the origin (0,0,0) (We're still Eclidean, Virginia)

2)	generate half-a-dozen vectors or so (vary for flavor)
		(of any orientation, any magnitude)

3)	take the dot-product of each of these vectors with (0 0 1)
		(this makes each vector point straight up)

4)	decide for each of the new vectors given by step 3)  whether to:

		a) make a leaf
			(attach a suitable 3Space leaf-shape there)
	or	b) make a branch
			(then go back to step 1, use the end of the vector
			as a new origin, and when doing step 3, rotate
			the vector (0 0 1) to "flatten" the new branching)

iterate to taste.  Serve with Dataglove, and Eyephones.  Serves 1.(*)


(*)	But that's only a limitation of the VPL software.  <grins>

				    -*-

More seriously.  Hope the math is self-explanatory.  Been looking at a lot
of Hilbert space functionals today, and I DON'T WANNA BE rigorous right now.

So like I said: coded this in C, created the data-structure in C (just a
simple linked pointer list), then "rendered" it into the Swivel3D
description language.  VPL's stuff took it over from there.

Of course this is about the simplest fractal one could imagine, and turns
out to be necessary given the current limitations of VR software (how it
handles the description language, how many n-gons it can hold before it
quits looking remotely like realtime, etc).  But I got my tree going, was
thinking about animating the sucker--making it sway in the virtual wind and
all that.

It would be optimal, given *really* fast hardware to have the fractal
description used to generate the graphics.  This might me supported within
the GL library at some level.  That way you woould generate the thing on
the fly, from a simple iterativ rule, without having all those n-gons
garbage collecting in the graphics RAM.  And I mean *really* fast, maybe
even parallel machines to do this (can anyone say "Alpha" out there?)  But
its related to "algorithmic complexity in maintaing presence in virtual
worlds".  Another virtual paper from the terrific summer at the HITLab.
Sigh.

Have source; will publish.

				    -*-

Y'all check out Trudeau's editorial 'Cyberspin' in Wednsday's _New York
Times_?  OP-ED page A21.  Virtual Bill Clinton in the APL environment
(Artifical Political Landscape).  Funny, they didn't mention who programmed
it, or whether it's running on an Indigo or not. . .


		keep on goin' on
