Re: Content, net-distribution aspects of VRML/Inventor/HTML/WWW

Don Brutzman (brutzman@cs.nps.navy.mil)
Mon, 26 Sep 1994 22:23:27 -0700 (PDT)


Brygg Ullmer writes:
> [lots of good stuff worth reading again]

We are circling in on a good set of definitions for vrml links. Clearly we
all expect many things will be possible when you enable a vrml link.
Here are the three (mutually exclusive) results that I think are needed when
a vrml link is activated:

- The link adds more .vrml nodes into the current scene
- The link spawns a separate browser or browsers
(gopher mosaic lynx www xv vrml et al. as specified by URLs &/or .mailcap)
- The link replaces all nodes in the current scene

This last one is needed for a few reasons. You have to wipe the slate
clear or your scene graph becomes monstrously large and everything
slows to the point of crashing. Mosaic analogy: surf for too long and
never clear your image cache, you eventually run out of disk space.
For vrml browsers this will be worse since scene graph traversal/rendering
is demanding of machine performance. You can't have a scene graph of the
whole internet-wide .vrml world in memory at one time, no matter how
well your culling and LevelOfDetail definitions are implemented.
Nor do you want to.

Previous scene graphs can be cached upon replacement, thus you can
still go (B)ack.

Lazy loading/bandwidth sensitivity/timing are separate issues which are
not impacted/temporal/up to the browser/next generation vrml.

Closely reading Gavin's proposal makes me think that you might be able
to specify scene graph replacement using the Inventor primitives
provided, but it is likely to be convoluted, and also make the upstream
scene graph vulnerable to corruption by the downstream scene graph
(or vice versa). Sure you might want that (let me put that world
trade center into the teapot :) but you also want to be able to make a
clean break as you step from one world into another world.
These 3 link actions permit either scenario.

What else can a link do? Anything you want. Just put it in a scene graph.
That's what vrml:// browsers and the .vrml file format are for.

If you think of the 'World-Wide VRML Web' as a big directed cyclic graph:
- .vrml files (scene graphs) are the principal nodes,
- other types of URL's are possible leaf (end) nodes, and
- these 3 types of activations are the possible arcs/actions connecting them.

Summary.
I propose that activating a link in a .vrml scene does one of three things:

- The link adds more nodes into the current scene
- The link spawns (pops up) a separate browser or browsers
- The link replaces all nodes in the current scene

regards, Don

-- 
Don Brutzman                                           work (408) 656-2149
Code OR/Br   Naval Postgraduate School  [Glasgow 204]  fax  (408) 656-2595
Monterey California 93943-5000  USA                    home (408) 372-0190