VRML: 3D Data Representation

Omer Casher and Henry S. Rzepa

The Virtual Reality Modelling Language (VRML) is the file format that describes 3D "hyperactive" scenes. Since it's inception in mid-1994 the number of VRML sites, browsers and authoring tools has been grown explosively.

We played a pivotal role during the earliest stages of VRML development when we published VRML files describing the 3CRO protein and its attributes long before any VRML files or relevant tools became available. Since then, we have produced a number of VRML chemistry examples along with authoring tools that can autogenerate VRML files by the thousands. The Imperial College VRML Chemistry page has had over 200 000 accesses.

The VRML authoring tools developed here are EyeChem modules. When connected to the various EyeChem file readers, molecular data in the most popular formats can be transcribed into VRML. We have recently developed modules to generate a VRML 3D scatter plot interface to the CCDC Quest program.

Transcribing molecular data into VRML will be simialr in concept to SGML-to-HTML conversion. We have developed cgi-bin programs to generate VRML files of access statistics dynamically. In the future, we plan to build additional cgi-bin programs to generate molecular VRML files. Molecular data can therefore reside on disk in whatever format it was submitted and would only be converted into VRML when it is accessed. The data should never require manual conversion into VRML by the author. The programs will probably be based on SGI's Molecular Inventor which we are currently beta testing. Both Molecular Inventor and VRML are derived from SGI's Open Inventor. We are also collaborating with Mark Benzel, the creator of Molecular Inventor on a VRML subset proposal specific to molecules.

Netscape is actively supporting VRML and in-lined VRML "plug-ins" are emerging. Netscape also supports Java, the language that will eventually describe VRML behavior. Clearly, representing 3D molecular data in VRML would provide a scalable value-added component to the electronic journal. Moreover, we have a suitable starting point for Java development.

The Moving Worlds VRML 2.0 Proposal

The difinitive file format for VRML 2.0 is under review and five proposals have been submitted. The front runner is clearly the Moving Worlds proposal by SGI, Sony, and WorldMaker. It is backwards compatible with VRML 1.0. Object behaviour is described by script nodes which can contain Java applets or any script type that the browser can interpret. Extensions to the specification are accomplished by node prototyping and notation handlers. An alternate representation node has a pointer to a more complex representation if the browser cannot handle the extension nodes.

Clearly the concept of VRML 2.0 is beginning to resemble SGML. The prototype nodes are serving as internal DTDs of a sort, and the external format support is the notation mechanism. Assuming human readability is a requirement and all VRML primitive such as spheres, cylinders, etc. required prototype definitions, VRML would be a 3D SGML.