The Virtual Reality Modeling Language (VRML) can be thought of as a three-dimensional analog for HTML and as an interchange format for descriptions of 3D scenes. This book is a well-organized, well-written reference to VRML version 2.0.
Although it is not meant as a tutorial, the 90-page description of key concepts in chapter 2 gave me a reasonable picture of the language and how it can be used. A VRML description is a hierarchical scene graph in which the various types of node describe geometric primitives (such as shapes and transformations), appearance properties (such as color, texture, and lighting), event sensors, and sounds. VRML is designed so that large “worlds” can be created from modular parts.
The bulk of the book is chapter 3, which describes each type of node. The number and quality of annotations in this chapter impressed me. Tips and examples suggest or show how to use VRML features in creating virtual worlds. Design notes describe why the features are the way they are; how and why they differ from version 1.0; the ideal behavior for which a VRML browser should strive; and practical limitations arising from constraints of browsers and their graphical rendering libraries.
The remainder of the book fills out the reference material with descriptions of the primitive VRML field and event types (chapter 4), conformance requirements for browsers (chapter 5), a grammar (Appendix A), examples (Appendix B), and a reference guide for writing scripts in Java (Appendices C and G) or Javascript (Appendices D and H) that interact with the VRML “world.”
The book has a reasonable index and a four-page quick reference guide. More useful, however, is the accompanying CD-ROM, which contains the complete book, and which can be read and searched with normal HTML browsers and search tools. The HTML text is cross-linked well, and with a suitable browser plug-in, one can view and interact with the VRML examples. I was disappointed not to be able to get some of the sound and movie examples to run on my workstation, but the geometric examples I tried all worked well. Anyone who works with VRML, or wants to, will get a lot from this book.