ns, and a country club. Ordinary, flat Web pages will seem snore-inducing by comparison. In addition, the "no-interface" interface will appeal to the neophyte net surfer.
VRML (it rhymes with thermal) is a specification for defining 3-D environments--worlds--on the Web. It aims to create a Web environment requiring no training, no metaphor, and no interface. In Mark Pesce's groundbreaking book
VRML--Browsing and Building Cyberspace
(New Riders Publishing), Web creator Tim Berners-Lee reasons that navigating 3-D space is more natural than clicking through hyperlinked text pages. You can explore virtual cities or museums and view 3-D representations of data. Like hot-linking through the Web, you can jump from one 3-D VRML world to another.
A Language of Space
VRML's designers (Pesce, Gavin Bell, and Tony Parisi) had three requirements for VRML 1.0: It had to be platform-independent, suited for low-bandwidth network connections, and extensible. They sacrificed other features, including interactivity. You can see that virtual basketball and move around it, but you can't dribble it--not yet, anyway.
They postponed intera
ctivity to avoid a language war. People don't get excited about the syntax of a language for describing polygonal objects, says the VRML specification, but they do get excited about syntax for manipulating "real" objects. They know they can't avoid the issue of adding "real" language features to VRML forever--arbitrary interactive behavior is critical to VRML's long-term success. Therefore, the plan is to include it in version 2.0.
Although it's not an extension to the Hypertext Markup Language (HTML)--and HTML browsers cannot interpret it--VRML is similar to HTML in a few ways. Like HTML, VRML is a platform-independent, document-centered ASCII language. Unlike HTML, it tells the computer how to create 3-D worlds. Developers construct complex objects--nodes in VRML parlance--from polygons and solids. However, VRML is more than geometry: You can specify light sources, the object materials, and effects such as fog.
Besides polygons and 3-D items, a node can contain a JPEG image or even MIDI sound
data. A VRML page can also include links (which are called anchors) to other VRML documents, HTML documents--whatever. A VRML object (or part of an object) can link to any other item on the Internet. All this information goes into an ASCII text file that typically has the extension .wrl. When you point your VRML-enabled browser at a VRML page, you enter the world that's described by the file.
As the World Downloads
VRML operates within the basic Web browser-server paradigm. Servers interpret browser requests and, with any luck, return the requested document, preceded by the document's tag, or Multipurpose Internet Mail Extensions (MIME) type. The MIME type for VRML documents is x-world/x-vrml. You can view them with a VRML viewer and a browser configured to use that viewer. It's simple.
On the server side, you may distribute a VRML world across several servers. Part of a scene may come from one place, and links may connect to a different server at a different location. VRML
files use a nested-object representation, sending the overall picture information first and the details later. In practice, this means scenes and objects first display as a rectangle (the bounding box) and the detail increases as more information arrives. Consequently, you can start navigating with your VRML viewer while not-yet-visible details and objects load. This makes VRML more bearable on slow connections and machines.
The viewer's navigation interface typically includes directional buttons or a joystick or handlebar. It can also use just mouse-clicks and drags. As the mouse pointer passes over a link (e.g., an elevator button in the scene), that object changes color. If you click on a link, a new document loads: another VRML world, an audio or video document, or a dull, old 2-D Web page. If the VRML viewer comes across a link to a non-VRML data type, it brings up a helper application.
Hunger for World Power
VRML is definitely not for the fainthearted CPU. Animated 3-D
scenes are heavy computing applications, even if you're not fussy about photo-realistic rendering. If you have insufficient computing power, you should expect to see sluggish navigation, stuttering frames, and artifacts (e.g., jagged edges).
Developers can use a few VRML features to lessen these performance horrors. For example, VRML's point of view is a camera. Normally, as you navigate through a VRML scene, you move the camera around--which is a compute- and bandwidth-intensive process. So, often a world's creator will define vista points--predefined viewpoints that you can jump to directly--to speed motion to important points of view.
Another trick is to vary the level of detail. If you're far away from an object, you don't need the same level of detail as you would if you're close to it. The VRML definition cleverly uses this opportunity for optimization by employing a nested format for objects. The level of detail (LOD) feature switches between different representations of an object autom
atically, from low to high detail,
depending on how close
the object is.
Even with these tricks, it makes sense that Silicon Graphics is big on VRML: Virtual reality and 3-D rendering still work best on high-end graphics workstations. For the rest of us, a 100-MHz Pentium machine with 32 MB of memory and Windows acceleration hardware or a Power Mac will do.
Ample bandwidth is a necessity. Even though VRML describes 3-D objects efficiently, a complex scene has many polygons, and textures require much data. Some experts suggest that ISDN is the minimum to explore the 3-D Web seriously. Unless you enjoy watching virtual grass grow, a 28.8-Kbps modem is the minimum.
Worlds to Come
Future VRML objects will know about physics, for animation and user interaction. You will be able
to rearrange the furniture
or bounce a ball. Apparently, VRML developers are contemplating using Sun Microsystems' Java programming language, which down
loads small applets, to execute functions. Future VRML will also support video and sound data streams, both ambient and tied to specific objects.
After all that comes user-user interaction. Researchers at the German National Research Center for Information Technology are developing a multiuser extension to VRML. It will control how and when users appear to others in a virtual environment.
IBM is also getting involved, although it's been vague in its statements. In August 1995, IBM announced a VRML extension called VRML+. According to IBM multimedia director Willie Chiu, it will make "a lot more services available." So far, the impact of IBM's initiative has not been apparent.
Where To?
It's not as if VRML viewers are going to replace existing HTML-based Web browsers. HTML will remain the standard for text pages with hyperlinked graphics and text. Is it true then that VRML brings us the Web without the interface? Not exactly. Walking or flying through a scene might be
more natural than scrolling through a Web page, but you still have to learn how. Also, authoring tools are complex to use.
So what is it good for? As a new medium within a new medium, it's difficult to predict. Initially, Web sites will probably use it as they use RealAudio and ShockWave--for extra glitz. But it can do far more. Already, architecture and industrial-design firms are using VRML to construct static models to display to customers and the general public. Some companies are experimenting with using 3-D effects to aid in navigation around their Web sites. And it won't be long before we see sites using moving 3-D representations of dynamic data.
WHERE TO FIND
Caligari Corp.
Mountain View, CA
Phone: (800) 351-7620 or (415) 390-9600
fax: (415) 390-9755
Internet:
http://www.caligari.com