[go: nahoru, domu]

Jump to content

VRML

Page semi-protected
From Wikipedia, the free encyclopedia

This is the current revision of this page, as edited by Wbm1058 (talk | contribs) at 15:50, 5 April 2024 (Not to be confused with Vector Markup Language). The present address (URL) is a permanent link to this version.

(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

VRML
Apartment ground plan in VRML
Filename extension
  • .wrl (plain)
  • .wrz (gzip compression)
Internet media type
  • model/vrml
  • x-world/x-vrml
  • application/x-cc3d
Latest release
2.0
Type of format3D computer graphics
Extended fromLabyrinth
StandardISO/IEC 14772-1:1997
Websitewww.web3d.org

VRML (Virtual Reality Modeling Language, pronounced vermal or by its initials, originally—before 1995—known as the Virtual Reality Markup Language) is a standard file format for representing 3-dimensional (3D) interactive vector graphics, designed particularly with the World Wide Web in mind. It has been superseded by X3D.[1]

WRL file format

VRML is a text file format where, e.g., vertices and edges for a 3D polygon can be specified along with the surface color, UV-mapped textures, shininess, transparency, and so on.[2][3] URLs can be associated with graphical components so that a web browser might fetch a webpage or a new VRML file from the Internet when the user clicks on the specific graphical component. Animations, sounds, lighting, and other aspects of the virtual world can interact with the user or may be triggered by external events such as timers. A special Script Node allows the addition of program code (e.g., written in Java or ECMAScript) to a VRML file.

VRML files are commonly called "worlds" and have the .wrl extension (for example, island.wrl). VRML files are in plain text and generally compress well using gzip, useful for transferring over the Internet more quickly (some gzip compressed files use the .wrz extension). Many 3D modeling programs can save objects and scenes in VRML format.

Standardization

The Web3D Consortium has been formed to further the collective development of the format. VRML (and its successor, X3D), have been accepted as international standards by the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC).

The first version of VRML was specified in November 1994. This version was specified from, and very closely resembled, the API and file format of the Open Inventor software component, originally developed by SGI. 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 by X3D (ISO/IEC 19775-1).

Emergence, popularity, and rival technical upgrade

The term VRML was coined by Dave Raggett in a paper called "Extending WWW to support Platform Independent Virtual Reality"[7] submitted to the First World Wide Web Conference[8] in 1994, and first discussed at the WWW94 VRML BOF established by Tim Berners-Lee, where Mark Pesce presented the Labyrinth demo he developed with Tony Parisi[9] and Peter Kennard.[10] VRML was introduced to a wider audience in the SIGGRAPH 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 of Netscape 2.0 by Netscape 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's SAPARi program, which was pre-installed on Vaio 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 the VREAM Division of Platinum Technology, which was then taken over by Computer 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, including Microsoft Chrome and Adobe 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 around 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 available bandwidth.[19] At the time of VRML's popularity, a majority of users, both business and personal, were using slow dial-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 as X3D. The MPEG-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 from CAD systems.[22]

A free cross-platform runtime implementation of VRML is available in OpenVRML. 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 of DirectX 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]

Example

This example shows the same scene as X3D § Example.

#VRML V2.0 utf8

Shape {
  geometry IndexedFaceSet {
    coordIndex [ 0, 1, 2 ]
    coord Coordinate {
      point [ 0, 0, 0, 1, 0, 0, 0.5, 1, 0 ]
    }
  }
}

Early criticism

In a March 1998 ACM essay, "Playfulness in 3D Spaces -- Why Quake 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]

Alternatives

  • 3DMLW: 3D Markup Language for Web
  • COLLADA: managed by the Khronos Group
  • O3D: developed by Google
  • U3D: Ecma International standard ECMA-363
  • X3D: successor of VRML
  • glTF: created by the Khronos Group, successor of Collada

See also

References

  1. ^ Paul Festa and John Borland (May 19, 2005). "Is a 3D web more than just empty promises?". CNET News.com.
  2. ^ "Version 1.0 Specification". Web3d.org. Retrieved 2010-02-23.
  3. ^ "VRML Version 1.0 Specification". Retrieved 2018-11-27.
  4. ^ Ando, Hideyuki; Kubota, Akihiro; Kiriyama, Takashi (July 1998). "Study on the collaborative design process over the Internet: a case study on VRML 2.0 specification design". Design Studies. 19 (3): 289–308. doi:10.1016/S0142-694X(98)00007-6. Retrieved 24 March 2020.
  5. ^ "VRML Version 2.0 Specification". 1996-08-04. Retrieved 2018-11-27.
  6. ^ Carson, George; Puk, Richard; Carey, Rikk (March–April 1999). "Developing the VRML 97 international standard". IEEE Computer Graphics and Applications. 19 (2): 52–58. doi:10.1109/38.749123.
  7. ^ Dave Raggett (1994). "Extending WWW to support Platform Independent Virtual Reality". Retrieved April 2, 2012.
  8. ^ "First World Wide Web Conference". 4.web.cern.ch. Retrieved 2010-02-23.
  9. ^ Media Machines Management
  10. ^ "Peter Kennard's page". Livingwork.com. Retrieved 2010-02-23.
  11. ^ Hardenbergh, Jan; Bell, Gavin; Pesce, Mark (August 1995). Course 12 - VRML: Using 3D to Surf the Web. ACM SIGGRAPH.
  12. ^ First 3D/VRML Plug-in for Netscape 2.0 shown by TGS; TGS extends leadership in Internet 3D products and technology. AllBusiness.com. 30 Oct 1995. Last accessed 26 Dec 2011.
  13. ^ Tsunetake Noma (February 7, 2014). "17th anniversary of the launch of "Sapari" service and the sale of VAIO business" (in Japanese). Retrieved January 4, 2021.
  14. ^ A Commentary on GeoVRML
  15. ^ "Floops general narrative". Biota.org. Retrieved 2010-02-23.
  16. ^ "Floops in his first episode". Retrieved 2010-02-23.
  17. ^ VRML Consortium Charter for Humanoid Animation Working Group
  18. ^ David Sabine. "What is (was) VRML?".
  19. ^ Introduction to VRML
  20. ^ Web-Based Control and Robotics Education, page 30
  21. ^ 3D Online: Browser Plugins and More
  22. ^ "XML Matters". Ibm.com. Retrieved 2010-02-23.
  23. ^ DrawGroup & DrawOp
  24. ^ Multitexturing
  25. ^ Programmable shaders component
  26. ^ Scene postprocessing support
  27. ^ VRML X3D and Realtime Web3D
  28. ^ Shirky, Clay (March 1998). "Playfulness in 3-D Spaces - Why Quake is better than VRML". Clay Shirky's Writings About the Internet. Archived from the original on 2019-04-09. Retrieved 2022-04-01.
Code samples
Documentation