From EduTechWiki - Reading time: 6 min
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.
See also:
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:
We add to this list:
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.
The purpose of WebGL is to bring hardware-accelerated 3D graphics to the Web without plug-ins. In other words, web browsers can directly support 3D graphics and lessen the need to install plugins.
Currently, (2018), all major browsers do support WebGL in one way or another.
Web GL is based on the well know OpenGL graphics API.
The HTML canevas element allows for some 3D:
“The The Canvas API is a client-side scripting technology to allow for the rich creation or alteration of raster images (bitmaps) . It uses vector-based programmatic methods to create shapes, gradients, and other graphical effects, and because it has no DOM, it can perform very quickly. Dedicated scripters can develop games or even full-featured applications using the Canvas API, alone or integrated into HTML or SVG. It is supported natively in most modern browsers (with script libraries extending support to all major browsers), and even on some mobile devices.” (Graphics (W3C, retrieved Sept. 2 2010).
Other proposals (additions to the HTML5 DOM tree, or JavaScript extensions)
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 no official 3D authoring tool from Adobe. CS4 and CS5 only provide support for 3D animation of 2D objects.
Flash is a popular technology for developing light-weight web games.
Adobe also provides older Shockwave format.
According to Wikipedia (retrieved Sept. 2, 2010), “Java 3D is a scene graph-based 3D application programming interface (API) for the Java platform. It runs atop either OpenGL or Direct3D. Compared to other solutions, Java 3D is not only a wrapper around these graphics APIs, but an interface that encapsulates the graphics programming using a real, object-oriented concept. Here a scene is constructed using a scene graph that is a representation of the objects that have to be shown. This scene graph is structured as a tree containing several elements that are necessary to display the objects. Additionally, Java 3D offers extensive spatialized sound support.”
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 is format somewhat similar to X3D. They can be distinguised by two major features:
Since most gaming engines support multi-users over the Internet, it shouldn't be difficult to integrate a client with a web browser.
Both VRML and X3D never caught on 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. A typical pattern is that a new 3D company makes a lot of noise for their proprietary format and then encounters some success then falls down to a smaller niche than VRML/X3D or bankruptcy. Examples were Active Worlds and now maybe Second Life.
Another typical pattern are the really big company planning to "own the 3D world". Typical examples are Microsoft Chrome and Adobe Atmosphere. Both were hailed as solutions supported by all the might of these companies, but they are all dead.
Let's see what will happen to Google's O3D, a particular difficult format to use, i.e. it's a JavaScript API and not a format. Such a strategy may be successful if end-user tools become available, like for Flash 3D or gaming engines, but probably it won't :)
For the reason that both VRML/X3D did survive and are quite expressive, both formats also are used as reliable exchange format (in the same way that SVG is used for 2D]]). Examples coded in 1997 still run and examples from 1995 only need minor adjustments. X3D has much better HTML/JavaScript integration. Yet another reason to opt for these standardized formats.