X3D Information

This section answers many of the common questions about X3D, including:

What is X3D ?

X3D which stands for "Extensible 3D", is the new open standard (still under development) for 3D content on the internet/web. In essence X3D is intended to be the new format or language that is used/required for 3D interactive worlds on the web (replacing/extending the existing VRML97 standard).

X3D is a file format specification with requirements on how that file is to be displayed. It will be the ISO standard for 3D graphics. The language is very robust and supports generalized 3D content for interactive web and other broadcast media.

Because the file is encoded in XML, it can be extended, making X3D more flexible than its predecessors. Efforts are underway for cross-support with MPEG (ie. make X3D the 3D component of the MPEG standard etc), SVG, CML, and MathML.

Can I use X3D ?

Yes. X3D is already a draft standard, and in January 2003 the X3D standard was submitted for ISO approval. At the moment only a few browsers are capable of making use of X3D files and as a result it may be a little premature to be choosing X3D as your primary format for 3D web content. Fortunately VRML97 (ie. X3Ds predecessor) files (ie. format supported by browsers) can be easily converted to X3D files, so at this time it is still best to develop in VRML and look to converting those files to X3D as the standard becomes better supported by browsers. This is the approach being taken by VRMLmagic (ie. currently it outputs VRML97, but as soon as X3D is supported VRMLmagic will output files in the X3D format).

Should I learn the X3D format ?

That depends, if you have an interest in developing the X3D standard you will want to get in and learn what you can of the draft X3D versions and add your own contributions. However if you're like most of us and primarily interested in the complete final standard then it would be best to wait for that to be completed. Even when the standard itself is complete, spending the time learning how the X3D standard works may not be the best approach.

X3D is currently much like HTML was in the very early days of the web. Back then it was not uncommon to see pages being written by hand in HTML. However as we have seen with HTML, over time tools have been developed to enable development of web pages using interactive graphical tools that don't require the developer to have any knowledge of the underlying HTML format.

At the moment most of the interactive 3D pages that we see on the web are hand written using the older VRML97 format. X3D is still a format of the future in terms of mainstream use. Despite this, easy to use interactive tools are now beginning to appear for X3D/VRML development (eg. VRMLmagic). It is likely that (as was the case with HTML) as time goes by, the need for a detailed knowledge of the specifics of the X3D standard itself will become less relevant (and experience with the higher level world building tools will become a more useful skill).

X3D Web Pages

X3D describes a format for 3D content. That content can be placed/incorporated into a range of places (now including tie ins with other multimedia formats such as MPEG, SVG etc). However the most likely place we will see X3D content incorporated is on the web.

How do X3D Web Pages work?

X3D webpages, and content in general, works along similar lines to VRML (ie. X3Ds predecessor). See section on How VRML Works for more information on this. Despite the similarities there are some subtle differences, including:

  • Most X3D files will not run on VRML browsers (as X3D is a super-set of VRML)
  • Most VRML files will run on X3D browsers
  • X3D files can indicate the level of functionality they require via profiles (eg some X3D worlds can tell the browser what features they require before it begins creating the world).
  • X3D content can, in theory, be incorporated into other multimedia and web technologies (eg. MPEG)

The X3D standard defines how X3D pages work as follows:

X3D, defines a software system that integrates network-enabled 3D graphics and multimedia. Conceptually, each X3D application is a 3D time-based space that contains graphic and aural objects that can be dynamically modified through a variety of mechanisms.

The semantics of X3D describe an abstract functional behaviour of time-based, interactive 3D, multimedia information. X3D does not define physical devices or any other implementation-dependent concepts (e.g., screen resolution and input devices). X3D is intended for a wide variety of devices and applications, and provides wide latitude in interpretation and implementation of the functionality. For example, X3D does not assume the existence of a mouse or 2D display device.

Each X3D application:

  • a. implicitly establishes a world coordinate space for all objects defined, as well as all objects included by the application;
  • b. explicitly defines and composes a set of 3D and multimedia objects;
  • c. can specify hyperlinks to other files and applications;
  • d. can define programmatic or data-driven object behaviours;
  • e. can connect to external modules or applications via programming and scripting languages;
  • f. explicitly declares its functional requirements by specifying a profile;
  • g. can declare additional functional requirements by specifying components.

How can I make X3D Web Pages?

There are several options for building X3D worlds, although at this stage with the standard still being developed the number of (development or viewing) tools available is limited, and developing by hand, with a draft standard to work with, is not ideal. In simple terms you can generate X3D pages in several ways including:

  • Use a Development Tool (eg. VRMLmagic) - on the positive side these are easy to use, give you easy access to the most powerful features of X3D and allow you to begin developing immediately without needing to learn the complex details of the X3D format. Most of these tools currently use VRML as the underlying X3D representation, however as X3D gets closer to becoming a standard we will see more X3D specific tools become available (and these tools will tap the newly developed features of X3D)
  • Hand Write an X3D File - given that X3D is still in development, hand written files will be the only way to trial many of the new features that X3D offers (when compared to the VRML97 format). As X3D is a flexible format, you can develop VRML files that will comply with the X3D standard (ie. VRML files with some minor changes are X3D files). While X3D is in development this is probably the best approach. For most of us hand writing such files is a complex process, so if you're primarily interested in developing 3D content rather than learning X3D, then perhaps using the VRML standard (at least until X3D itself is established as a standard) is the best option.

How is X3D different/better than VRML97 ?

X3D is the evolutionary successor to the ISO standard VRML97. As a result X3D offers many features that are new, when compared to VRML, these include:

  • X3D is more flexible than VRML (using XML to provide additional data encoding functionality)
  • X3D incorporates new advanced rendering features (eg: multi-texturing, shadows, shaders etc)
  • X3D incorporates Keyboard sensors
  • X3D incorporates NURBS
  • X3D can be implemented by browsers with different levels of functional ability (ie. standard compliance levels provide this)
  • X3D has a componentized architecture
  • X3D is to become the standard for 3D content in other multimedia technologies (eg. MPEG)

Who is developing X3D, and who controls it ?

X3D is being developed by the Web3D Consortium. This is a group made up of parties interested in developing open standards for web related 3D technologies. Web3D is intended to be representative of the 3D community in general. Membership in Web3D is open to all interested parties and as a result control of the developing X3D standard is held by that broad community. For more information on Web3D take a look at our Web3D page.

The Future for X3D

X3D represents the next step in the evolution of 3D web content. With X3D, interactive 3D web content is now, for the first time, poised to become more than just a niche part of the web. X3D's improved functionality, and more importantly its flexibility open the way for 3D content to be more easily incorporated into numerous multimedia technologies.

We are also beginning to see X3D/VRML development tools become available. Bringing VRML/X3D development to the masses. We know that good development tools are a key to the proliferation of a technology, bringing a whole new set of developers into the market.

With the obvious demand for 3D content and the forward movement of standards like X3D the future for 3D web content looks bright.

Other Useful X3D References

X3D Draft Standard - the document describing the X3D standard

VRML Information - our brief rundown of VRML, what it is and how it works

Web3D Information - our brief rundown of Web3D, what it is and how it works

VRMLmagic - our X3D/VRML Authoring Software

Web3D Consortium - the definitive source for all information on X3D

VRML web 3D web3D VR X3D

Return to Homepage

Copyright © 2003 Scintillating Graphics, the Scintillating Graphics logo and VRMLmagic are all either registered trademarks or trademarks of Scintillating Graphics.