background image
face and standardisation issues, including HTML, 3D graphics and wider issues of access
and internationalisation.
Virtual Reality Modelling Language (VRML)
The language
The acronym VRML is slightly misleading:VRML is not a language as such, rather it
is a file format for describing interactive 3D objects and worlds and is used by WWW
users for viewing 3D scenes just as HTML is used to view text.The intention of VRML
authors was that it should become the standard for interactive 3D simulation within the
As with HTML,VRML files are parsed by a dedicated browser, such as Cosmo's
CosmoPlayer, or Cortona by Parallel Graphics.
VRML is a collection of about 60 different nodes, which are ways of defining pre-
defined or user-defined shapes.The five VRML primitives, the fundamental shapes, i.e.
sphere, box, cone, cylinder and text, are defined in only a small amount of code, and can
be easily modified, with a cube becoming an oblong, a sphere being transformed to
become an egg, and so on.Textures and appearances can then be `mapped' to these
shapes. Coders can decide which sides of a 3D block need to be rendered and which
may be safely ignored, for example the underside of an individual floor tile which is
unlikely to be seen in any view, thereby saving precious processing time. Decisions can
also be taken on whether every polygon is rendered individually or as part of a group.
Virtual reality is a relatively processor-intensive business.The optimisation of code
remains a necessity so that the virtual world will appear and behave as closely as possible
to the real world. As processor speeds increase, less emphasis has been placed on the pro-
cessing power needed to render VR worlds quickly, and the focus has moved to band-
width. A broadband user will be better placed to view large Web-distributed VRML files
and potentially interact with them in real time than a user with access only to a 56 kbps
modem.VRML data may be stored in and retrieved from a bi-directional database, thus
further reducing the sizes of files and speeding the rendering of large virtual worlds.
Events and behaviours play a central role in creating realistic and illusory effects.
Polygons can be animated, and be made to move either independently or as a result of
user input/interaction. Objects may have behaviours. In terms of realism, for example,
users will ideally want most objects in a virtual world to be solid so that they are not
able to walk through walls or fall through floors. Conversely, with some objects, such as
smoke and water, the user should be able to pass through with little or no resistance and
these choices add another level of complexity to the coder's role. Ambient sounds such as
rain or animal calls and event sounds like a key scraping in a lock, for instance, can be
added to VRML worlds while intelligent lighting effects may be employed to add further
authenticity to the experience overall. As any climber will reveal, a hillside in the rain
and a hillside in bright sunshine can seem like two altogether different places, and the
attentive use of weather and lighting effects in a virtual world will hold the user's atten-
tion longer than a single unchanging perspective. Using events with care, a fourth
dimension, time, may be applied to VRML worlds, and VR in general has the potential
Virtual Reality and
Display Technologies
See for a fuller analysis.
The VRML event handling language VRMLScript is a subset of JavaScript, and Microsoft's VBScript is
also compatible with VRML.