after: Gavin Bell, Silicon
Graphics, Inc.
Anthony Parisi, Intervista Software
Mark Pesce, VRML List Moderator
26-MAY-95
- VRML's Roots:
The Virtual Reality Modeling Language (VRML) is a programming language for describing
interactive simulations and virtual worlds networked via the global Internet and
hyperlinked with the World Wide Web.
The first version of VRML allowed for the creation of virtual worlds with limited
interactive behavior. These worlds contained objects with hyperlinks to other worlds,
HTML documents or other valid MIME types. When the user selected an object with a
hyperlink, the appropriate MIME viewer was launched. When the user selected a link
to a VRML document from within a correctly configured WWW browser, a VRML viewer
was launched. Thus VRML viewers were the perfect companion applications to standard
WWW browsers for navigating and visualizing the Web.
Later versions of VRML allow for richer behaviors, including animations, motion physics
and real-time multi-user interaction.
- VRML Mission Statement:
The history of the development of the Internet has had three distinct phases; first,
the development of the TCP/IP infrastructure which allowed documents and data to
be stored in a proximally independent way; that is, Internet provided a layer of
abstraction between data sets and the hosts which manipulated them. While this abstraction
was useful, it was also confusing; without any clear sense of "what went where",
access to Internet was restricted to the class of sysops/net surfers who could maintain
internal cognitive maps of the data space.
Next, Tim Berners-Lee's work at CERN, where he developed the hypermedia system known
as World Wide Web, added another layer of abstraction to the existing structure.
This abstraction provided an "addressing" scheme, a unique identifier (the
Universal Resource Locator), which could tell anyone "where to go and how to
get there" for any piece of data within the Web. While useful, it lacked dimensionality;
there's no there there within the web, and the only type of navigation permissible
(other than surfing) is by direct reference. In other words, I can only tell you
how to get to the VRML Forum home page by saying, "http://www.wired.com/",
which is not human-centered data. In fact, I need to make an effort to remember it
at all. So, while the World Wide Web provides a retrieval mechanism to complement
the existing storage mechanism, it leaves a lot to be desired, particularly for human
beings.
Finally, we move to "perceptualized" Internetworks, where the data has
been sensualized, that is, rendered sensually. If something is represented sensually,
it is possible to make sense of it. VRML is an attempt (how successful, only time
and effort will tell) to place humans at the center of the Internet, ordering its
universe to our whims. In order to do that, the most important single element is
a standard that defines the particularities of perception. Virtual Reality Modeling
Language is that standard, designed to be a universal description language for multi-participant
simulations.
These three phases, storage, retrieval, and perceptualization are analogous to the
human process of consciousness, as expressed in terms of semantics and cognitive
science. Events occur and are recorded (memory); inferences are drawn from memory
(associations), and from sets of related events, maps of the universe are created
(cognitive perception). What is important to remember is that the map is not the
territory, and we should avoid becoming trapped in any single representation or world-view.
Although we need to design to avoid disorientation, we should always push the envelope
in the kinds of experience we can bring into manifestation!
This document is the living proof of the success of a process that was committed
to being open and flexible, responsive to the needs of a growing Web community. Rather
than re-invent the wheel, we have adapted an existing specification (Open Inventor)
as the basis from which our own work can grow, saving years of design work and perhaps
many mistakes. Now our real work can begin; that of rendering our noospheric space.
- History:
VRML was conceived in the spring of 1994 at the first annual World Wide Web Conference
in Geneva, Switzerland. Tim Berners-Lee and Dave Raggett organized a Birds-of-a-Feather
(BOF) session to discuss Virtual Reality interfaces to the World Wide Web. Several
BOF attendees described projects already underway to build three dimensional graphical
visualization tools which interoperate with the Web. Attendees agreed on the need
for these tools to have a common language for specifying 3D scene description and
WWW hyperlinks -- an analog of HTML for virtual reality. The term Virtual Reality
Markup Language (VRML) was coined, and the group resolved to begin specification
work after the conference. The word 'Markup' was later changed to 'Modeling' to reflect
the graphical nature of VRML.
Shortly after the Geneva BOF session, the www-vrml mailing list was created to discuss
the development of a specification for the first version of VRML. The response to
the list invitation was overwhelming: within a week, there were over a thousand members.
After an initial settling-in period, list moderator Mark Pesce of Labyrinth Group
announced his intention to have a draft version of the specification ready by the
WWW Fall 1994 conference, a mere five months away. There was general agreement on
the list that, while this schedule was aggressive, it was achievable provided that
the requirements for the first version were not too ambitious and that VRML could
be adapted from an existing solution. The list quickly agreed upon a set of requirements
for the first version, and began a search for technologies which could be adapted
to fit the needs of VRML.
The search for existing technologies turned up a several worthwhile candidates. After
much deliberation the list came to a consensus: the Open Inventor ASCII File Format
from Silicon Graphics, Inc. The Inventor File Format supports complete descriptions
of 3D scenes with polygonally rendered objects, lighting, materials, ambient properties
and realism effects. A subset of the Inventor File Format, with extensions to support
networking, forms the basis of VRML. Gavin Bell of Silicon Graphics has adapted the
Inventor File Format for VRML, with design input from the mailing list. SGI has publicly
stated that the file format is available for use in the open market, and have contributed
a file format parser into the public domain to bootstrap VRML viewer development.
Early on the designers decided that VRML would not be an extension to HTML. HTML
is designed for text, not graphics. Also, VRML requires even more finely tuned network
optimizations than HTML; it is expected that a typical VRML scene will be composed
of many more "inline" objects and served up by many more servers than a
typical HTML document. Moreover, HTML is an accepted standard, with existing implementations
that depend on it. To impede the HTML design process with VRML issues and constrain
the VRML design process with HTML compatibility concerns would be to do both languages
a disservice. As a network language, VRML will succeed or fail independent of HTML.
It was also decided that, except for the hyperlinking feature, the first version
of VRML would not support interactive behaviors. This was a practical decision intended
to streamline design and implementation. Design of a language for describing interactive
behaviors is a big job, especially when the language needs to express behaviors of
objects communicating on a network. Such languages do exist; if we had chosen one
of them, we would have risked getting into a "language war." People don't
get excited about the syntax of a language for describing polygonal objects; people
get very excited about the syntax of real languages for writing programs. Religious
wars can extend the design process by months or years. In addition, networked inter-object
operation requires brokering services such as those provided by CORBA or OLE, services
which don't exist yet within WWW; we would have had to invent them. Finally, by keeping
behaviors out of Version 1, we have made it a much smaller task to implement a viewer.
We acknowledge that support for arbitrary interactive behaviors is critical to the
long-term success of VRML; they will be included in Version 2.