Web 3D technology

The educational technology and digital learning wiki
Jump to navigation Jump to search

Draft

<pageby nominor="false" comments="false"/>

Definition

Usually, Web 3D refers to interactive 3D technology that one can use through a web browser. However, users are usually required to install a so-called plugin.

Web 3D also can refer to technology that allows to browser the Web in 3D. See visualization.

Overview of web 3D technologies

One may distinguish several kinds of technologies and that are not really comparable since the fulfill different needs.

Wikipedia (retrieved 11:00, 2 September 2010 (CEST)) suggests to use four different criteria:

  • Simplicity (Automatic Installation, rates facilities already high)
  • Compatibility (Windows, Mac, Unix ..)
  • Quality (Performances, see Frames per second, and indirectly display quality)
  • Interactivity (Depending on the solutions, their programming opportunities, the creators of content have more or less freedom in the creation of interactivity.)

We add to this list:

  • Standardization (which is very important in education, since contents should last for decades). Standardization includes interaction with other standards, such as HTML, HTTP (URLs), ECMAScript, MPEG, etc.
  • Expressiveness, i.e. what types of contents can be defined and rendered.

VRML and X3D

3D on the Web began in it's very beginning. The major impulse for VRML, the Virtual Reality Modeling Language, can be traced back to a birds of the feature sessions on Virtual Reality Markup Languages at the First International Conference on the World-Wide-Web, May 25-27, 1994 at CERN in Geneva.

It's conceptual origins are older, e.g. (a) Science Fiction literature (e.g. [Gibson, 1994], [Stephenson, 1992]), (b) Mark Pesce's, P. Kennard's and Toni Parisi's Labyrinth system ([Pesce et al., 1994]) and proposal for a 3-D navigation and representation scheme and (c) more generally 3-D computer graphics (including VR). Based upon SGI's Open Inventor format, a almost final draft for VRML 1.0 was presented at the second WWW conference in fall 94 in Chicago. On April 3, 1995 SGI presented WebSpace, the first publicly available VRML browser. So all in all it took about a year to set standards and make the first browser available. In 2007, VRML became an ISO standard.

VRML never caught on very much, because it's flexibility made it difficult to write rendering engines that were fast. In opposition, early gaming engines just could render tunnels (with textures) and weapons and were fast because of this specialization. Of course, in the 1990's most PC's didn't have 3D graphics boards and those who did, were both very slow and very expensive compared to modern boards. In addition, interfaces with web browsers, i.e. the HTML page in which the 3D scene is embedded were unreliable and not standardized. This was also a major flaw, since it is important to be able to combine interactive 2D and 3D contents. Finally, 3D companies ought to be able to plan for the long term since writing flexible rendering engines cans take years. Without the backing of large company, this is not possible.

In 2001, the Web3D Consortium started work on X3D and a first release was published in 2003. X3D is a revision of VRML in modular form. It supports both XML and traditional VRML syntax. Most modules are now ISO standards or almost.

Like VRML, X3D never caught one a lot. Nevertheless, both formats are quite popular in education since they are flexible and powerful, declarative and standardized. Most proprietary Web 3D formats did not survive. The typical pattern is that a new 3D company makes a lot of noise for their proprietary format and then encounters some success - examples were Active Worlds, then Second Life and more recently Google's O3D) and then falls down to a smaller niche than VRML/X3D or bankruptcy. For this reason, VRML/X3D also are used as reliable exchange format (in the same way that SVG is used for 2D]].

WebGL

The purpose of WebGL is to bring hardware-accelerated 3D graphics to the Web without plug-ins. In other words, web browsers will directly support 3D graphics and lessen the need to install plugins.

Currently, (Sept. 2010), Firefox 4Beta and WebKit ?Beta (Safara/Chrome) provide partial support. It is possible to install one of these versions in addition to the stable versions, but you'll have to carefully manage your profiles.

Web GL is based on the well know OpenGL graphics API.

HTML5 / JavaScript APIs

Since HTML includes en element for graphics, i.e. the canevas element, there are several API proposals that will build on top of WebGL.

  • Google promotes O3D. “O3D is an open source (BSD license) JavaScript API[2] created by Google for creating interactive 3D graphics applications that run in a web browser window or in a XUL desktop application. O3D may be crafted for use in any application area, however it is geared towards games, advertisements, 3D model viewers, product demos, simulations, engineering applications, control and monitoring systems, or massive online virtual worlds. O3D is currently in Google's incubation lab, and is deployed as an experimental web browser plugin.” (retrieved Sept. 2, 2010).
  • The Web|3D consortium launched X3DOM in 2010. X3DOM “an experimental open source framework and runtime to support the ongoing discussion in the Web3D and W3C communities how an integration of HTML5 and declarative 3D content could look like. It tries to fulfill the current HTML5 specification for declarative 3D content and allows including X3D elements as part of any HTML5 DOM tree.” (X3DOM Blog , retrieved Sept. 2 2010).

Flash

Flash 10 (released in 2008) does have 3D capabilities, i.e. ActionScript classes and methodes. Prior to official 3D support, many 3rd party developers did release Flash 3D products most of which are programming libraries. These libraries remain more popular than Adobe's classes but they usually rely on Adobe's framework.

There is not official 3D authoring tool from Adobe. CS4 and CS5 only provide support for 3D animation of 2D objects.

QuickTime VR

According to Wikipedia (retrieved 11:38, 2 September 2010 (CEST)), “QuickTime VR (virtual reality) (also known as QTVR) is a type of image file format supported by Apple's QuickTime. It allows the creation and viewing of photographically captured panoramas and the exploration of objects through images taken at multiple viewing angles. It functions as a plugin for the standalone QuickTime Player, as well as working as a plugin for the QuickTime Web browser plugin.”

3DMLW

3DMLW is format somewhat similar to X3D. They can be distinguised by two major features:

  • 3DMLW supports both 2D and 3D Contents, whereas X3D is meant to be embedded in HTML
  • 3DMLW allows .3ds, .obj, .an8, and .blend file formats for 3D models.
  • In 3DMLW scripting is with Lua, whereas in X3D it is JavaScript (in addition to interactive built-in elements of the X3D format).

Links

Wikipedia links
Technology Home pages
  • Please also follow up the links in the text and point to other EduTechWiki articles
  • Google Code o3d

Bibliography

  • Gibson, W. (1994). Neuromancer. Ace, New York.
  • Ortiz, Sixto Jr. (2010). Is 3D Finally Ready for the Web?, Computer, January 2010 (Vol. 43, No. 1) pp. 14-16. (Computer, (Access restricted)).
  • Pesce, M. (1995). VRML, Browsing and Building Cyberspace. New Riders, Indianapolis.
  • Stephenson, N. (1992). Snow Crash. Bantam.