Grab your data helmets and Mattel Power Gloves, virtual reality is upon us.
Just when we were getting comfortable with real reality, now we've got to deal with virtual reality. What will these techies think of next?
It will be awhile before virtual reality changes the way we blow dry our hair. But subtle changes are already in evidence. To illustrate, the experimental simulators which were cutting edge just a decade ago are now fairly common in shopping malls.
Virtual reality involves the presentation of a virtual world to an actual person in such a way that the actual person can interact with the virtual world as if he/she were actually virtual. Want me to run that by you again? A virtual world would appear real from the point of view of virtual objects in it, but would appear simulated from the point of view of the actual person using it. Virtual reality sounds like Einstein's theory of relativity at its most abstract, doesn't it. Well, it neednt be that complicated at least from the end user's perspective.
One important ingredient in a virtual reality experience is
Of course, virtual reality experiences arise from the coordination of integrated computer programs. Visualization programs support displaced perspective. Rendering programs create 3-D graphics which make the field of vision look real. Multi-sensory input/output programs control the communication from such peripherals as data helmets and forced-feedback data gloves. All of these programs, and many more to boot, work together to provide a virtual experience which is as close to the real thing as technology permits. They are the tools with which virtual stuff is made.
The business part of the virtual reality experience is the virtual world - a 3-dimensional artificial reality in which imaginary objects interact with each other in such a way that the actual "player" feels that he or she is a part of the experience. Figures 1 and 2 depict a now-classic, simple example of virtual reality - a virtual teapot. Developed in Utah in the mid-1970's as a benchmark for graphics rendering, the VRML version of this image is a textbook example of how object rotations and animations may be achieved in VRML-compatible Web browsers.
In order to produce and display virtual worlds, the scenes must be in some standard data format which is readable by the end-user's applications software. At this writing, the de facto standard seems to be version 1.0 of the Virtual Reality Modeling Language (VRML) [see http://vag.vrml.org/www-vrml/vrml.tech/vrml10-3.html for further detail]. As originally envisioned by its authors, VRML was to be a platform-independent, HTML-compatible standard. Not surprisingly, there are dozens of proprietary standards as well which offer VRML 1.0 compatiblility while at the same time supporting proprietary extensions to this standard. Such format standards as Microsoft's Reality Lab, OpenGL, Intel's 3DR, and Renderware are being implemented by a variety of developers, each in anticipation that their standard will someday prevail.
Each VRML world is made up of polygons and vertices. To illustrate, the VRML version of the Utah Teapot in the attached figures consists of about 2,000 vertices and about twice that many polygons - which are easily seen under enlargement. Armed with just these two elements, vertices and polygons, we may depict any object. Add to that motion along axes, and one has primitive animation of objects. What we see when we view our virtual teapot is thousands of faces of polygons, appropriately shaded, colored, and illuminated. The motion which separates Figure 1 from Figure 2 is simply rotation along the vertical axis. In principle, though not in practice, VRML is pretty simple.
VRML environments abound within and without the World Wide Web. The data and programs which comprise these environments are readily accessible to end-users who want to enjoy this experience. While within the province of the high priests of computerdom just a decade ago, these resources are now available to everyone with a desktop computer.
The biggest single advance, however, came as a result of the World Wide Web. Through VRML viewers connected with mainstream Web browsers, either through the browser's launchpad or via a "plug in", virtual reality made its way to tens of millions of Web users. The convenience beckoned, and the Web community is responding by the millions.
Virtual reality for most of us remains fairly primitive. The graphics images are grainy and have rough edges. The motion transforms are rough and the navigation through virtual worlds is often cumbersome. However, for those who can see the forest through the trees, the potential benefits are obvious.
Within the decade many of us will choose to virtually navigate to a new doctor's office before actually driving there. We'll virtually experience the labyrinth of county offices, before taking the physical plunge toward the assessor's office. The shopping malls will be navigable in cyberspace for those who disdain crowds.
Even now, virtual reality offers an interesting, experimental playground for those who want to experience the world of interactive, 3-D animation. And this world will gain beauty and form as network bandwidth constraints and limitations of video processing fade. Future VRML Web sites will become increasingly rich resources for three-dimensional navigations through cyberspace.
For interactive examples of the ultimate benefit of virtual reality as seen through the Web see the sidebar.
I am doubly pleased to announce this new, vendor-independent VRML Web site. It's a great site to learn about VRML, for one. For another, it was developed by one of my students.
Terry Smith's VRML TUTOR (see Figure 3) is a self-contained "cybercourse" on VRML and the Web. It discusses the history of VRML, the art of configuring VRML browsers (most are actually Netscape plug-ins), and developing VRML worlds. In addition, it contains links to VRML browsers and to a variety of VRML websites grouped by subject area.
Since VRML is predominately a standard modeling language, Terry approaches the VRML TUTOR from the computer graphics perspective. While the visitor with some basic knowledge about graphics will probably derive more benefit from the VRML TUTOR than those without, the VRML TUTOR can be enjoyed by the neophyte as well. Terry develops a basic understanding of the graphics pipeline, VRML rendering, virtual worlds, VRML language basics, and so forth.
One section of VRML TUTOR, entitled World Basics with VRML 1.0, introduces the user to the primitive nodes used in VRML. Basics such as creating the primitive shapes (spheres, circles, etc.), nodes used to transform objects (translation, rotation, and scaling), nodes to create text, points, lines, polygons, reusing objects, and linking objects to HTML documents and other VRML worlds (a teleport) are covered in this section. For each of the nodes covered, The VRML Tutor either displays the syntax of the node, an example world using that node, or both. At any time the user may download and examine any of the sample worlds created by clicking the listing name or on the picture of the VRML world.
The next section of the tutor, Adding Realism to VRML Scenes, goes beyond the basics and into making sharp VRML worlds using cameras, lighting, materials, and textures. In its current state, the tutelage comes to an end with a chapter which covers reducing VRML file sizes using gzip compression and methods for optimizing worlds.
For those of you who want to get up to speed on VRML basics, this is the site to visit. And by the way, nice work, Terry!