Next Section →

1. Background: What is X3DOM, and what can it do for me?


Plugin-Free Declarative 3D in your browser

X3DOM (pronounced "X-Freedom") is an open source JavaScript framework, used to create declarative 3D scenes in Web pages. Since it is based on standard browser technology, your browser does not need any plugin to display X3DOM scenes. In a nutshell, the declarative 3D concept means that you can create and display an interactive 3D scene, using a structured, textual representation, rather than writing code. In the case of X3DOM, this textual representation is part of an HTML document that represents a Web page. This way, 3D content becomes a first class citizen inside the Web page, just as text, links, images or movies.

X3DOM = X3D + DOM

The name X3DOM is composed of two well-known abbreviations. The first one is X3D ("Extensible 3D Graphics"), which denotes a royalty-free ISO standard for declarative 3D graphics. The second abbreviation is DOM ("Document Object Model"), which describes the interaction concepts and hierarchical representations that are associated with the content of HTML documents. With X3DOM, a special subset of X3D (the so-called HTML Profile) serves as a decription language for the 3D content inside the Web page. The X3D(OM) elements can be manipulated via DOM operations, just like other HTML elements. You might, for example, dynamically change the color of a 3D object with a JavaScript call to setAttribute(...) on the corresponding DOM element, just in the same way as you would dynamically change, for instance, the text of a label inside a common Web page.

Reasons to Use X3DOM

Using X3DOM instead of other browser-based 3D libraries or X3D players has several advantages:

So, how does it work?

If you want to develop your first X3DOM application, all you basically need is a browser and a text editor. Of course, you might also choose any sophisticated HTML and JavaScript development environment, like, for instance, WebStorm.