|Part One: A Guide to VRML 2.0|
The Virtual Reality Modelling Language (VRML) is the standard file format for describing 3D objects and interactive scenes that can viewed and explored on the World-Wide Web. VRML is pronounced as either "V-R-M-L" or "ver-mal". VRML file names are given the extension, .wrl, short for world.
Figure 1-1 A VRML Model of the National Gallery of Ireland with intergrated HTML descriptions
In some ways, VRML can be considered as a three dimensional equivalent of the Hypertext Markup Language (HTML), which is used to create the hypertext documents of the Web. In particular, both languages share the following important features:
However, the syntax and structure of each language are entirely different. This is to be expected since each language is describing entirely different things. HTML needs to describe the content, layout and formatting of a two dimensional document. For this it uses a system of markup tags. VRML, on the other hand is a modelling language, it describes the geometry and positioning of objects within a three dimensional space using 3D coordinates. It also specifies the appearance of these objects and other properties such as lighting and interactions.
- They are written in a plain text format. A VRML or HTML document can be created or edited with an ordinary text editor.
- Multi-platform. Neither language is dependent on any particular computer hardware or operating system.
- Hyperlinking. Both HTML documents and VRML worlds can contain links to other documents, worlds or resources located anywhere on the Web, identified by a Uniform Resource Locator (URL).
- Inclusion of multimedia elements. As well as text, a HTML document can contain embedded images and other multimedia components such as video, sound or Java applets, each referenced by a URL. Similarly, VRML can use texture images, video, sound and program script files in a world. A VRML world can also include other VRML files.
- Open standards. The HTML specification is controlled by the World Wide Web Consortium, VRML is an ISO international standard.
The first version of VRML was developed between 1994 and 1995. The need for a three dimensional equivalent of HTML was established at the First International Conference on the World-Wide Web in the Spring of 1994. It was here that the name VRML (originally Virtual Reality Markup Language) was first coined.
Following the conference, an internet mailing list (www-vrml) was set up to allow interested individuals to discuss the requirements of such a language. The participants soon reached the consensus that in order to develop a standard quickly, the first version of VRML should be be based on one of the 3D modelling languages already in existence. For the same reason, it was also decided to leave the more difficult problem of defining methods for implementing animations and multi-participant interactivity until later. The first version of VRML would only describe static worlds.
A number of different formats were proposed as the basis of VRML 1.0, but after some debate the members decided that Silicon Graphics' Open Inventor ASCII format best met the agreed requirements. Discussions continued on the mailing list on how to adapt the Open Inventor format, which SGI had now placed in the public domain, to include platform independence and hyperlinking features. The first draft of the VRML 1.0 specification was presented at the Second WWW Conference in October 1994. By the following Spring the first VRML compatible Web browser, Silicon Graphics' WebSpace, was made freely available. This was soon followed by other VRML browsers and authoring tools for most computer platforms. Consequently, the number of Web sites containing VRML worlds soon began to grow.
The VRML 1.0 specification allowed the following:
More information about VRML 1.0 can be found in the SIMA report "VRML in Art and Design Higher Education" (see Section 7.0).
- Virtual 3D worlds created from primitive shapes, such as cubes, cones, spheres and text, or with custom defined shapes.
- Material properties including texture maps to be applied to these shapes.
- Initial viewpoints and the ability for the user to examine or move freely through a scene.
- Objects that are clickable hyperlinks to other VRML worlds or documents.
- Multiple light sources.
- Inline objects, where the geometry is defined in a separate VRML file.
- Objects with different levels of detail.
- Object definitions named and reused.
With VRML now being actively supported by many major computer companies and organisations, it became necessary for the development of VRML to be organised more formally. Therefore, in 1995 the leaders of the VRML community formed the VRML Architecture Group (VAG) to oversee its development.
The limitations of the static VRML 1.0 worlds were soon becoming apparent and there was demand for new features, especially for more interactivity and behaviours. By the end of 1995, a number of companies, including Silicon Graphics and Microsoft were already developing replacements for VRML 1.0. Therefore, VAG decided that to avoid a fragmentation of the standard, they would issue a request for proposals and allow the VRML community to choose the best candidate for VRML 2.0 in a process similar to the development of VRML 1.0. The role of VAG would be to produce a list a requirements and manage the selection process, rather than defining the new specification themselves.
Six proposals were received: Active VRML from Microsoft, Dynamic Worlds from GMD and others, HoloWeb from Sun, Moving Worlds from Silicon Graphics and others, Out of this World from Apple, and Reactive Virtual Environment from IBM Japan. Following a six week public review and voting process in the early part of 1996, the Moving Worlds proposal emerged as the clear favourite. Hence Moving Worlds was chosen as the basis for VRML 2.0. After some amendments and revisions, the final VRML 2.0 specification was ready to be presented at the Siggraph96 conference.
The new features introduced in VRML 2.0 include:
- Enhanced Static Worlds.
Sound, movie textures, fog and backgrounds can now be added to a VRML world. There are new ways to define complex geometries such as terrains and extruded shapes. The VRML 2.0 scene graph structure has also been simplified.
- Interaction and Animation.
- Prototyping New VRML Objects.
New VRML properties or objects can be defined and reused using the prototyping mechanism.
All these features are described in more detail in Section 3.0.
Following the selection of the Moving Worlds proposal as the basis of VRML 2.0, VAG began working with the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC) to turn VRML 2.0 into an international standard. This collaboration resulted in ISO/IEC-14772-1:1997, also known as VRML97, being formally approved by the ISO in December 1997, as an international standard.
VRML97 is now the current version of VRML. The full specification document can be found online at http://www.vrml.org/Specifications/VRML97/
In fact there is no real difference in functionality between VRML 2.0 and VRML97. Changes were made only to the wording and layout of the specification document, to ensure that it satsified the ISO requirements. In this report, the name VRML 2.0 is generally used instead of VRML97, for consistency.
In December 1996, the nonprofit VRML Consortium (www.vrml.org) replaced VAG as the body responsible for the development and promotion of VRML. Consortium corporate members include Apple, Cosmo Software (a SGI company), Microsoft, IBM and Sony.
VRML enables information and ideas to be presented in three dimensional form and shared across computer networks. VRML worlds can be made available on the Web or just a local Intranet. Worlds may be based on real places or objects or be totally imaginary or abstract. A world may be animated and highly interactive or be entirely static. Some example applications are listed below.
- Advertising, e.g. 3D banners replacing animated GIFs in a HTML page.
- Architecture, e.g. a walk-through of building (see Figure 1-1).
- Artistic, e.g. virtual sculptures (see Figure 2-6).
- Business, e.g. 3D representation of databases.
- Manufacturing and Design, e.g. a model of a product (see Figure 2-1).
- Educational, e.g. historical reconstructions.
- Entertainment, e.g. animated cartoon characters (see Figure 2-3).
- Geography, e.g. terrain maps.
- Personal, e.g. a 3D home page.
- Scientific, e.g. simulations and data visualization.
- Virtual Communities, e.g. multi-user games.
To see how VRML is currently being used, visit some of the recommended sites listed at Cosmo Software, http://cosmosoftware.com/galleries/, or at the Mining Co. VRML GuideSite, http://vrml.miningco.com. Example sites are also shown in the figures in Section 2.0.
Graphics Multimedia Virtual Environments Visualisation Contents