VRML Frequently Asked Questions This document resides at (URL is http://www.oki.com/vrml/VRML_FAQ.html). There is also a text only version. (URL is VRML_FAQ.txt) If you have any comments, please mail them to jch@oki.com I must confess that I can barely keep up with the announcements and URLS and products coming over www-vrml. The VRML repository has been doing a very good job at keeping up. (URL is http://www.sdsc.edu/vrml/) Also (URL is http://www.vrml.org) is interesting. I like having a single document that gives an intro & overview. I will shift the focus of the VRML FAQ and leave the product tracking to others. Perhaps a change of name, too? Last-modified: 1995/11/10 Version: 1.3.1 (only minor mods) VRML (pronounced "vermel", kinda like vernal) stands for Virtual Reality Modeling Language. These are details gleaned from reading the VRML discussion group. It is archived at (URL is http://vrml.wired.com) by the good graces of Wired and Brian Behlendorf. Contents * 0: Recent changes to the FAQ * 1: VRML Today o 1.0: What is VRML? o 1.1: Where can I get the specification? o 1.2: What's the history of VRML? o 1.3: What's 3D graphics, anyway? o 1.4: What VRML events are going on at SIGGRAPH? * 2: VRML Browsers o 2.1: What browsers are available? o 2.2: Who else is working on a browser o 2.3: What is QvLib? * 3: Other VRML Tools o 3.1: Authoring tools o 3.2: Conversion tools * 4: Neat VRML Sites o 4.1: Lists of Pointers to indices... o 4.2: VRML (.wrl) Data Sites o 4.3: How set up an HTTP server to host .wrl files? o 4.4: How to compress .wrl files? * 5: Where is VRML going? o 5.1: VRML 2.0 Features o 5.2: What about VRML 1.1? o 5.3: How can I participate in the design process? o 5.4: What is the design process? o 5.5: Access for All * Books * Bibliography 0: Recent changes to the FAQ Stripped out the browser, modeller & converter sections. These are tracked much more reliably by Charles Eubanks and the VRML Repository Added Mesh Mart under Data Sites. Update SIGGRAPH BOF info A new section on books... (anyone wanna buy a PEX book? :-) There is a Japanese version of the FAQ. (URL http://www.anchor-net.co.jp/rental/andoh/vrml/vrmlfaq.html) thanx to Yukio Andoh andoh@tec.nk-exa.co.jp. 1.0: What is VRML? VRML stands for Virtual Reality Modeling Language. What it is depends on the limits of your imagination. Right now it is a draft specification for adding 3D data to the Web. Mark Pesce has been the VRML list moderator since it began. His vision has shaped much of VRML. Early vision (URL is http://vrml.wired.com/concepts/visions.html) A fairly recent talk, "VRML Equinox", given by Mark as the Developer's Day Keynote Address at WWW3 in Darmstadt captures the status quo as of 95.APR.15. (URL is http://vrml.wired.com/arch/1390.html) VRML 1.0 is a subset of the Inventor File Format (ASCII) with some additions to allow linking out to the Web and including other URLs. The linking out feature (WWWAnchor) provides the same feature that HREF anchors provide in HTML. VRML 1.0 was agreed to be the minimal starting point for a much larger vision. There is a rich set of materials on (URL is http://vrml.wired.com) which should be thought of as the primary VRML site. Just before the VRML press announcement, Mark described VRML in a "backgrounder" (URL is http://vrml.wired.com/arch/1010.html) " VRML is a language for describing multi- user interactive simulations -- virtual worlds networked via the global Internet and hyperlinked within the World Wide Web." On 3-APR-95, Silicon Graphics (SGI) announced its WebSpace products, which Template Graphics (TGS) will license and port to other platforms. This more commercial thrust adds an interesting balance to the VRML mixture. There is a lot more visibility and hype for VRML. That is both good and bad. Hopefully, the browsers coming out SOON will both extend and temper the good aspects of the visibility. Seventeen companies and organizations also announced their support for VRML-based 3D graphics on the World Wide Web. These companies include: AccelGraphics, Inc., Brown University, CERN, Digital Equipment Corporation, Intergraph, NCD, NEC Technologies, net.Genesis Corporation, Netscape Communications, Oki Advanced Products, San Diego Supercomputer Center, Spyglass, Tenet Networks, Viewpoint Datalabs International, Inc., the University of Darmstadt, Wavefront Technologies and 3Dlabs Inc. P.S. If I lost you at the Web, (World Wide Web or WWW) you might try using Mosaic or Netscape to look at one of these: The Web Project page: (URL is http://www.w3.org/hypertext/WWW/TheProject.html) The WWW FAQ (one which this is modeled): (URL is http://sunsite.unc.edu/boutell/faq/www_faq.html) (Up to Table of Contents) 1.1: Where can I get the specification? The final 1.0 spec is off (URL is http://www.hyperreal.com/~mpesce/vrml/vrml.tech/vrml10-3.html The spec was written by Gavin Bell of Silicon Graphics, Anthony Parisi of Intervista Software, and Mark Pesce, VRML List Moderator. The final spec is dated 26-MAY-95. I have also put a duplicate copy up at (URL http://www.ultranet.com/~jch/vrml10.html) There is a copy in France (URL http://www.univ-mlv.fr/VR/VRML/Doc) Thanx to pvk@indy.univ-mlv.fr (Pascal VUYLSTEKER). Is there one in Japan? The curious can check the changes at (URL is http://www.hyperreal.com/~dagobert/) Mark Owen announced that there were .doc, .wp5 and .txt version at this ftp site - (URL is ftp://ftp.vrml.org/pub/specification/ (Up to Table of Contents) 1.2: What's the history of VRML? 1.3: What's the history of VRML? Here is a timeline Also, a view from the SGI trenches: (URL is http://www.sgi.com/ion/Spring_95/vrml.ezine.3.95.html) (Up to Table of Contents) 1.3: What's 3D graphics, anyway? Geometry, transformations, attributes, lighting, shading, textures, clipping... Any good tutorials on the net? (Up to Table of Contents) 1.4: What VRML events are going on at SIGGRAPH? There is a course, VRML: Using 3D to Surf the Web. Sunday August 6th, 1:30PM. Jan Hardenbergh, Gavin Bell and Mark Pesce. There is a panel - 3D Graphics Throught the Internet - A "Shoot-Out" Friday 3:45-5:30 PM. Carl Machover, Gavin Bell, Carl Tollander, Tamara Munzner and Val Watson. There will probably be several based worlds in the interactive communities: at least Waxweb 2.0... Don Brutzman is organizing a BOF/SIG for Sunday 6-9 PM. Room 403A of the LA Convention Center. In addition, there are many courses, papaers and panels on VR, behaviors for synthetic humans, physics based modeling, sound, interactivity, etc, etc, etc!!! It is safe to say that everything at SIGGRAPH relates to VRML on some level. (URL is http://www.siggraph.org/conferences/siggraph95/siggraph95.html) (Up to Table of Contents) 2.1: What browsers are available? I can't keep up with these. Intervista WorldView, SGI WebSpace (which TGS licenses & ports), VRweb from Graz, NCSA, & the Gophers, Geomview from the U of Minnesota Geometry Center, WIRL from VREAM, etc. Check out the VRML repository. (URL http://www.sdsc.edu/SDSC/Partners/vrml/repos_software.html) (Up to Table of Contents) 2.3: What is QvLib? Public source code for QvLib, a parser library for VRML has been released - written by Paul Strauss (pss@engr.sgi.com) and Gavin Bell (gavin@engr.sgi.com) of SGI, it is code to build a parse tree from a VRML file for future VRML applications. It has been updated to the Final VRML 1.0 specification for SGI. That is at (URL is ftp://ftp.sgi.com/sgi/inventor/2.0/qv1.0.tar.Z) Here is a WIN32 version that was announced to the net. From: Omar Eljumaily I've put a WIN32 version of QVLib on my WWW site at: (URL is http://www.omnicode.com/~omar/) Please be very careful not to ask questions that have already been answered. From: "Paul S. Strauss" Date: Thu, 15 Jun 1995 09:20:38 -0400 Subject: QvLib Since I've received a bunch of mail asking questions of QvLib, I thought I'd prepare a mini-FAQ and take care of them all at once: 1) When is QvLib 1.0 going to be made public? [jch thinks this is public] ftp://ftp.sgi.com/sgi/inventor/2.0/qv1.0.tar.Z 2) Is there any good documentation for QvLib? Not really. The header files and README are all that come with QvLib, and (as far as I know) nobody has yet written any good documentation. However, learning about Open Inventor would help quite a bit if you want to understand QvLib. 3) When is QvLib going to be ported to {Mac,Windows,Amiga,Univac,...}? I have no idea. Find out if anyone is doing the port and ask them. If nobody is porting to your favorite machine, why not volunteer? 4) I'm having a problem with the version of QvLib that runs on {insert non-SGI-platform here}. Do you know why? Again, no. I can vouch only for the SGI version. You should ask whomever is responsible for the port to your platform. The old versions (based on November draft) for LINUX, IRIX, Sun, NT and Mac versions at (URL is ftp://ftp.vrml.org/pub/parser/) Specifically, Addison Wesley's "The Inventor Mentor" and "Open Inventor C++ Reference Manual" are invaluable. In the draft version library, several people have had problems with the CONCAT macros in QvBasic.h. If you are having problems getting the tests to work, check that out. By implementing rendering functions in the QvTraverse functions you can write a simple VRML file viewer. Add the ability to fetch .wrl files and a way to communicate files other than .wrl to browsers and you have something interesting. Here are some pointers: (URL is http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/cci-spec.html) (URL is http://www.netscape.com/info/APIs/index.html) There is also a yacc/lex grammar from the DIVE folks. (URL is ftp://ftp.sics.se/pub/dive/vrml_parser.tar.gz (Up to Table of Contents) 3.1: Authoring tools Again, I'm punting on this. Check out the VRML repository: (URL http://www.sdsc.edu/SDSC/Partners/vrml/repos_software.html) (Up to Table of Contents) 4.1: Lists of Pointers to indices... There are many sites that have lists of sites and more everytime I check. Here are a few starting points. I am not attempting to provide a list of all VRML links. Just a few starting points. There is a good list of pointers maintained by Jim Race on the Well. It seems to be one of the freshest VRML pages going. (URL is http://www.well.com/www/caferace/vrml.html) There is a new site at VRML.ORG, whoever they are? (URL is http://www.vrml.org) The Community Company maintains a VRML page. (URL is http://www.net.org/~tcc/vrml.html) 3DSite: vrml-links-new (URL is http://www.lightside.com/3dsite/cgi/VRML-index.html) VRML-o-Rama!! (URL is http://www.well.com/user/spidaman/vrml.html) is a collection of links & personal notes. WWW Viewer Test Page provides sample URLs for a wide variety of content. This allows you to test your browser and how it hands data off to helper applications. It also has some other MIME pointers. Check out (URL is http://www-dsed.llnl.gov/documents/WWWtest.html) (Up to Table of Contents) 4.2: VRML (.wrl) Data Sites The first announced VRML 1.0 site was WaxWeb: (URL is http://bug.village.virginia.edu/vrml) Created by David Blair, Waxweb 2.0 is the first interactive, intercommunicative FEATURE FILM on the WORLD WIDE WEB (Variety, 2.16.95). It is also, the first network-distributed narrative to offer real-time 3-D navigation through a story. Waxweb is a project of the Brown University Graphics Laboratory, headed by Andries VanDam, with Tom Meyer serving as the technical director of the project. The Mesh Mart has a catalog of objects. They also maintain an excellent list of pointers in the VRML page. (URL http://cedar.cic.net/~rtilmann/mm/) (Up to Table of Contents) 4.3: How set up an HTTP server to host .wrl files? You need to edit the configuration file to establish the file suffix to MIME (more below) type mapping. This allows the HTTP protocol to use the MIME types to identify data coming accross the net as VRML data. If you had .wrl files available via ftp, the client (browser/viewer) would be responsible for mapping file extension to MIME tpye (or directly to the application to be launched. For CERN you need to add this line to httpd.conf: # add the VRML type. AddType .wrl x-world/x-vrml 8bit 1.0 For the EMWACS NT server, you add similar things in the Control Panel of the HTTP Server. Open that to see the list of MIME type mappings. Click on the New Mapping button and give .wrl & x-world/x-vrml Date: Mon, 24 Apr 95 15:25 MET DST From: Simon Leinen (simon@lia.di.epfl.ch> For Netsite, I have tried to use the nifty forms-based administrative user interface to add a type mapping from the .wrl extension to the correct MIME type, but didn't find any possibility to do that. Adding the following line to the file /var/mc-httpd/admin/config/mime.types seems to work though: type=x-world/x-vrml exts=wrl NCSA's httpd, add the following line to conf/srm.conf: AddType x-world/x-vrml wrl (Up to Table of Contents) 4.3: How to compress .wrl files? This is still a little "predictive" (has been made to work on UNIX). I think this is the way it should be. Thanks to Brian Behlendorf for getting it to work somewhere. If you are putting up compressed VRML files on your web site you need to add a Content-Encoding line which tells the browser to uncompress it. Using the Free Software Foundation's GNU zip tools seems like the only viable cross platform option. For Apache and NCSA's httpd, add the following line to srm.conf, and any file like *.wrl.gz will be properly labeled with Content-encoding: x-gzip AddEncoding x-gzip gz For CERN, it is just a little different... (in httpd.conf) AddEncoding .gz x-gzip (Up to Table of Contents) 5.1: VRML 2.0 Features There are many things to be added to VRML 1.0 to create a full multi-user 3D environment. There are many features to be incorporated into a cyberspace system - perhaps only a piece of which is VRML. The other would be a new protocol for registering presence and getting updates. The idea of a VRMUD has been discussed - Think of "The Street" from Snow Crash, or the Holodeck, or... * behaviors (objects behave based on time and events) * interactions (a way to feed events into environments) * multiple participants * sound (if it was not in VRML 1.1) * telepresence This assumes some sort of scripting ability. Physics based modeling should be possible - things cannot pass through each other, they fall when dropped. Also, other sorts of constraints would be nice for object placement. Read the archive for tons of ideas. VRML 2.0 work will begin in earnest after the first wave of VRML browsers get out. (Up to Table of Contents) 5.2: What about VRML 1.1? mentioned numerous times and in Mark Pesce's VRML Equinox at WWW3. (URL is http://vrml.wired.com/arch/1390.html) Candidates for inclusion: * Annotation text (or nodes) * Inline Sound * i18n text (Internationalization) * caching of inline objects, on a CD-ROM for example. * video streams as texture sources (simulating portals & TVs) * simple animation features (Up to Table of Contents) 5.3: How can I participate in the design process? There are several mailing lists - summary from the VRML Repository. (URL is http://www.sdsc.edu/SDSC/Partners/vrml/repos_mailing.html) - vrml-modeling@sdsc.edu Technical discussion on geometry description issues in VRML. Topics include features of current and proposed geometric primitives, import/export tools, compatibility with existing systems, implementation details, performance issues, cross-platform issues, and so forth. Unmoderated. To subscribe, email to listserv@sdsc.edu. In the message body type: add vrml-modeling - vrml-behaviors@sdsc.edu Technical discussion on describing behaviors within VRML. Topics include how to add interaction and animation behaviors to VRML, scripting language issues, implementation details, and so forth. Unmoderated. To subscribe, email to listserv@sdsc.edu. In the message body type: add vrml-behaviors - www-vrml@wired.com // General discussion on VRML. Unmoderated. To subscribe, email to majordomo@wired.com. In the message body type: subscribe www-vrml your-email-address (Up to Table of Contents) 5.4: What is the design process? I've heard this raised a few times. The current process is that the authors of the VRML 1.0 (Gavin Bell, Anthony Parisi and Mark Pesce) discuss issues on the www-vrml mailing list and then revise the spec. Currently, Mark, Gavin & Tony are working with seven other as the VRML Architecture Group. http://vrml.wired.com/VAG Seeing as the ultimate standards body for VRML is the IETF, this is probably OK. The process is similar, I think. Get IETF Zen URL! XXX At some point it will become a (new) MIME content type ("world" or "3D" or "geometry") and a subtype "vrml". While the lack of formality may make some uncomfortable, no one can argue with the progress made so far, IMHO. (Up to Table of Contents) 5.5: Access for All What effect will VRML have on people who are blind, or people who cannot manipulate keyboards, pointing devices or datagloves? How can we build in the oppurtunity for equal participation and thereby enhance the experience for all? This is referred to as Augmentative technology. The ATRC at the University of Toronto in association with other groups is grappling with these VRML challenges (URL is http://www.utirc.utoronto.ca/AdTech/VRML/vrml.html) (Up to Table of Contents) Where can I get the nifty VRML artwork? Kevin Hughes of EIT is the creator and has put it into the public domain. See (URL is ftp://www.vrml.org/pub/graphics/) (Up to Table of Contents) VRML Books Newriders has announced a VRML book by Mark Pesce. David Dwyer posted a short note to www-vrml saying we should look for it at SIGGRAPH and in bookstores soon afterwords. Sams.Net, an imprint of Macmillan Computer Publishing (just like New Riders), will be publishing "The Web Developer's Guide" in September, written by John December and Mark Ginsberg. Besides covering HTML, Web Site Design and CGI in a detailed way, the guide will include a chapter on VRML by Adrian Scott (theme@netcom.com) called "Virtual Reality on the Web" that will introduce VRML, discuss VRML Web Site Design and give VRML Net Resources Information. (Up to Table of Contents) Bibliography RFC 1521 (MIME) -- IANA Registration Procedures If you would like to thank Oki Advanced Products for hosting this and letting me spend a little time on it, you could check out our TrianGL board. (URL is http://www.oki.com/products/TrianGL.htm) (URL is ) YON, jch@oki.com, Jan C. Hardenbergh, Oki Advanced Products 508-460-8655 http://www.oki.com/people/jch/ =|= 100 Nickerson Rd. Marlborough, MA 01776 Imagination is more important than knowledge - Albert Einstein (1879-1955)