Re: Some criteria for VRML

Dave Raggett (dsr@hplb.hpl.hp.com)
Wed, 6 Jul 94 13:50:37 BST


Mathew Taylor writes:

> Will any of the languages that have been suggested to date be capabable at
> any point in the future of supporting fractal specifications or even
> animations of objects or their environments?

Can you give me pointers to people working on fractal specifications for
textures?

I am currently preparing a proposal for VRML which will indeed go beyond
simple geometric descriptions and support realistic scenes and rich
behaviours. I am also very interested in intrinsic descriptions of scenes,
which are executed by browsers to generate the objects in the scenes.

As an example consider a scene of an open plan office with many work cubicles.
Each cubicle is formed from a standard set of parts which can be assembled
in a variety of ways, with walls, shelves, work surfaces, white boards,
computers and phones etc. The VRML file includes geometric descriptions for
each of these parts together with a program to assemble them.

A pseudo-random number generator is used to introduce variations, so that
each cubicle in the room is slightly different. The program can be regarded
as a piece of genetic code and hence it becomes possible to apply the
techniques of genetic algorithms to develop codes which generate interesting
arrangements of cubicles. Similar ideas apply to landscape generation,
e.g. generating a population of trees of a given type.

By using a standard algorithm and seeding the pseudo-random number generator
with the same value, the room will appear the same to anyone who downloads
this piece of VRML. Because the process is deterministic, one can "name"
each cubicle and use this to associate personal effects with each cubicle.
This allows the browser to retrieve these effects from a server as the
user approaches each cubicle, e.g. which books are on the shelves, what is
scribbled on the whiteboard etc.

Continuing with the office scenario, behaviours can be associated with
each object. Some objects are fixed like walls while others like chairs
can be pushed arround. Books can be picked up. You can scribble on the
whiteboard and of course type into the computer. I believe that a small
set of behaviours is sufficiently common to support directly in VRML.
My paper to the Internet Society Conference (see [1]) described the
ability to press against, to click on, pick up and put down objects.
Richer behaviours are better dealt with via separate scripting languages
for defining object orientated models. Animation may be initiated
autonomously without the user having to do anything.

My immediate goals are to write up the basic proposal for VRML which
describes scenes as a number of composed elements using a C like syntax.
This language is designed to be easy to render and to convert to other
existing formats like Inventor, MSDL and OOGL. It goes beyond these
formats though, by including features needed for naturalistic VR, e.g.
describing the sky in terms of cloud names such as strato cumulus,
distancing and hooks for behavioural attachments.

Time constraints mean that the draft proposal won't be ready for a
couple of weeks yet, sadly [this is my evening job].

--
Best wishes,

Dave Raggett

[1] http://www.wired.com/vrml/concepts/raggett.html

----------------------------------------------------------------------------- Hewlett Packard Laboratories email: dsr@hplb.hpl.hp.com Filton Road tel: +44 272 228046 Stoke Gifford fax: +44 272 228003 Bristol BS12 6QZ United Kingdom