| VRML | |
|---|---|
Apartment ground plan in VRML | |
| Filename extension |
|
| Internet media type |
|
| Latest release | 2.0 |
| Type of format | 3D computer graphics |
| Extended from | Labyrinth |
| Standard | ISO/IEC 14772-1:1997 |
| Website | www |
VRML (Virtual Reality Modeling Language, pronouncedvermal or by its initials, originally—before 1995—known as the Virtual Reality Markup Language) is a standardfile format for representing3-dimensional (3D) interactivevector graphics, designed particularly with theWorld Wide Web in mind. It has been superseded byX3D.[1]
VRML is atext file format where, e.g.,vertices and edges for a 3Dpolygon can be specified along with the surface color,UV-mappedtextures,shininess,transparency, and so on.[2][3]URLs can be associated withgraphical components so that aweb browser might fetch a webpage or a new VRML file from theInternet when theuser clicks on the specific graphical component.Animations,sounds,lighting, and other aspects of thevirtual world can interact with the user or may be triggered by externalevents such astimers. A special Script Node allows the addition ofprogram code (e.g., written inJava orECMAScript) to a VRML file.
VRML files are commonly called "worlds" and have the .wrlextension (for example, island.wrl). VRML files are inplain text and generally compress well usinggzip, useful for transferring over the Internet more quickly (some gzip compressed files use the .wrzextension). Many3D modeling programs can save objects andscenes in VRML format.
TheWeb3D Consortium has been formed to further the collective development of the format. VRML (and its successor,X3D), have been accepted as international standards by theInternational Organization for Standardization (ISO) and theInternational Electrotechnical Commission (IEC).
The first version of VRML was specified in November 1994. This version was specified from, and very closely resembled, theAPI andfile format of theOpen Inventorsoftware component, originally developed bySGI. Version 2.0 development was guided by the ad hoc VRML Architecture Group (VAG).[4] A working draft was published in August 1996.[5] Formal collaboration between the VAG and SC24 of ISO/IEC began in 1996[6] and VRML 2.0 was submitted to ISO for adoption as an international standard. The current and functionally complete version is VRML97 (ISO/IEC 14772-1:1997). VRML has now been superseded byX3D (ISO/IEC 19775-1).
The term VRML was coined byDave Raggett in a paper called "Extending WWW to support Platform Independent Virtual Reality"[7] submitted to theFirst World Wide Web Conference[8] in 1994, and first discussed at the WWW94 VRML BOF established byTim Berners-Lee, whereMark Pesce presented the Labyrinth demo he developed withTony Parisi[9] andPeter Kennard.[10] VRML was introduced to a wider audience in theSIGGRAPH Course, VRML: Using 3D to Surf the Web[11] in August 1995. In October 1995, at Internet World, Template Graphics Software (TGS) demonstrated a 3D/VRML plug-in for the beta release ofNetscape 2.0 byNetscape Communications.[12]
In 1997, a new version of the format was finalized, as VRML97 (also known as VRML2 or VRML 2.0), and became an ISO/IEC standard. VRML97 was used on the Internet on some personal homepages and sites such as "CyberTown", which offered 3D chat using Blaxxun Software, as well as Sony'sSAPARi program, which was pre-installed onVaio computers from 1997 to 2001.[13] The format was championed by SGI's Cosmo Software; when SGI restructured in 1998, the division was sold to theVREAM Division ofPlatinum Technology, which was then taken over byComputer Associates, which did not develop or distribute the software. To fill the void a variety of proprietary Web 3D formats emerged over the next few years, includingMicrosoft Chrome andAdobe Atmosphere, neither of which is supported today. VRML's capabilities remained largely the same while realtime 3D graphics kept improving. The VRML Consortium changed its name to the Web3D Consortium, and began work on the successor to VRML—X3D.[14]
SGI ran a web site at vrml.sgi.com on which was hosted a string of regular short performances of a character called "Floops" who was a VRML character in a VRML world. Floops was a creation of a company called Protozoa.[15][16]
H-Anim is a standard for animated Humanoids, which is based on VRML, and later X3D. The initial version 1.0 of the H-Anim standard was scheduled for submission at the end of March 1998.[17]
VRML has never seen much serious widespread use.[18] One reason for this may have been the lack of availablebandwidth.[19] At the time of VRML's popularity, a majority of users, both business and personal, were using slowdial-up Internet access.
VRML experimentation was primarily in education and research where an open specification is most valued.[20] It has now been re-engineered asX3D. TheMPEG-4 Interactive Profile (ISO/IEC 14496) was based on VRML[21] (now on X3D), and X3D is largely backward-compatible with it. VRML is also widely used as a file format for interchange of 3D models, particularly fromCAD systems.[22]
A free cross-platform runtime implementation of VRML is available inOpenVRML. Its libraries can be used to add both VRML and X3D support to applications, and a GTK+ plugin is available to render VRML/X3D worlds in web browsers.
In the 2000s, many companies like Bitmanagement improved the quality level of virtual effects in VRML to the quality level ofDirectX 9.0c, but at the expense of using proprietary solutions. All main features like game modeling are already complete. They include multi-pass render with low level setting for Z-buffer, BlendOp, AlphaOp, Stencil,[23] Multi-texture,[24] Shader with HLSL and GLSL support,[25] realtime Render To Texture, Multi Render Target (MRT) and PostProcessing.[26] Many demos shows that VRML already supports lightmap, normalmap, SSAO, CSM and Realtime Environment Reflection along with other virtual effects.[27]
This example shows the same scene asX3D § Example.
#VRML V2.0 utf8Shape { geometry IndexedFaceSet { coordIndex [ 0, 1, 2 ] coord Coordinate { point [ 0, 0, 0, 1, 0, 0, 0.5, 1, 0 ] } }}In a March 1998ACM essay, "Playfulness in 3D Spaces -- WhyQuake is better than VRML, and what it means for software design",Clay Shirky sharply criticised VRML as a "technology in search of a problem", whereas "Quake does something well instead of many things poorly...The VRML community has failed to come up with anything this compelling -- not despite the community's best intentions, but because of them. Every time VRML practitioners approach the problem of how to represent space on the screen, they have no focused reason to make any particular trade-off of detail versus rendering speed, or making objects versus making spaces, because VRML isn't for anything except itself. Many times, having a particular, near-term need to solve brings a project's virtues into sharp focus, and gives it enough clarity to live on its own."[28]