![]() |
X3D Resources |
![]() |
Extensible 3D (X3D) Graphics is the royalty-free open standard for publishing, viewing, printing and archiving interactive 3D models on the Web.
Applications | Authoring Tools | Authoring Support | Books | Conformance | Conversions | Examples | Export and Import | Feedback | License | Mobile | Model Search | PowerPoint | Programming Languages | Quality Assurance (QA) | References | Security | Showcase | Training and Tutorials | Videos | VRML and Open Inventor | Wish List | X3D Developers Guide | X3D‑Edit authoring tool | X3D Progress | X3D Scene Authoring Hints | X3D Tooltips | X3D Validator (currently offline, available in X3D‑Edit) | Xj3D | Contact
Numerous resources are available to support both X3D Graphics and its compatible predecessor, the Virtual Reality Modeling Language (VRML).
Extensible 3D (X3D) is the third-generation successor to the Virtual Reality Modeling Language (VRML), providing full backwards compatibility and adding functionally equivalent XML and compressed-binary file encodings.
- Player support for X3D components provides a feature comparison of major X3D viewers, for each player and each X3D component.
-
A simple example test scene is
HelloWorld.x3d
provided in a variety of X3D encodings and conversions:
(.x3d XML, .x3dv ClassicVRML, .wrl VRML97, .html listing, .html X_ITE, .xhtml X3DOM, .java Java source, .json JavaScript Object Notation, .py Python source, .ttl Turtle source with SPARQL query, .x3db compression, XML canonicalization (C14N), and .png image) - The HelloWorld.x3d scene is a simple authoring example that illustrates the minimalist X3D Interchange profile. Also available: internationalized Hello World Scenes.
- Please install one of the following X3D players to view X3D/VRML scenes and browse these examples.
X3D players and plugins from Web3D Consortium members:
- InstantReality is a high-performance X3D player and Mixed Reality (MR) system by Fraunhofer IGD (Linux, macOS, Windows) (forum).
- Special mention. X3DOM (pronounced "X-Freedom") implements a high-performance X3D player in open-source JavaScript. Authors can publish X3D source within an HTML5 page that works in modern Web browsers without prior plugin installation (get involved and forum).
- FreeWRL/FreeX3D X3D/VRML browser (open-source C). (Linux, macOS, Windows) (contact, (bug tickets). Also described on Wikipedia.
- H3D/H3DViewer is an open-source C++ API and X3D player (Linux, macOS, Windows) (forum).
- Xj3D is an open-source Java viewer and application codebase for X3D graphics scenes.
- GeoVrml Run-Time was originally used for VRML97 GeoVrml examples.
- Dynamic-3D is a pure Java-based 3D Graphics Engine for web browsers. Open source renderer by Mitch Williams.
Other X3D players, not (yet?) Web3D Consortium members:
- Special mention. X_ITE X3D Browser implements a high-performance X3D player in open-source JavaScript. Authors can publish X3D source within an HTML5 page that works with Web browsers without prior plugin installation.
- BitManagement's BS Contact and BS Contact Geo X3D/VRML97 plugins for HTML web browsers (Linux, MacOS, Windows) (support).
- Castle Model Viewer (formerly view3dscene) is a free cross-platform VRML/X3D browser that also supports other 3D model formats (FreeBSD, Linux, MacOS, Windows) built by Castle Game Engine (forum).
- Cortona3D Viewer by Parallel Graphics, VRML plugin for Netscape or Internet Explorer (support).
- GPAC is an Open Source multimedia framework for presentation technologies (graphics, animation and interactivity) and packaging formats such as MP4. (Linux, macOS, Windows).
- Heilan X3D Browser open-source C++ browser for audio research (Linux, macOS, Windows).
- libx3d open-source C++ libraries for X3D.
- NuGraf by Okino provides a 3D rendering, translation, viewing & data optimization system (Windows + emulators and plugins for other authoring tools) (support).
- Octaga Player 5.0 (and Octaga-only plugin test page) by Octaga VS is a high-performance X3D/VRML browser (Windows) (support). Downloads of prior Octaga Player 2.1 also available at c|net.
- OpenVRML is a free cross-platform runtime for VRML and X3D (FreeBSD, Linux, macOS) (support).
- Orbisnap is a free multi-platform standalone VRML97 viewer for visualizing virtual worlds, and can connect to a Simulink 3D Animation server (FreeBSD, macOS, Linux, Unix) (support).
- SwirlX3D Free Player by Pine Coast Software (Windows) (support).
- V-Slam browser for virtual and mixed reality devices, also released as open source based on Unity3D engine.
Legacy and unsupported X3D players:
- blaxxun Contact VRML97 plugin for Netscape or Internet Explorer, and Matlab plugin (not supported).
- CosmoPlayer was created by Silicon Graphics Inc. (SGI) (not supported)
-
Vivaty was the successor to MediaMachines, with eventual acquisitions by Platinum, Computer Associates (CA) and Microsoft.
(corporate history)
- Flux Player and Flux Studio X3D/VRML97 viewer plugin and authoring tool for Internet Explorer (Windows) (not supported). Also includes download links to Nexternet Pivoron player.
- Flux open-source early release for VRML and X3D, removed by project committers (Windows, Internet Explorer and Firefox). Sourceforge changed their policy after this incident to eliminate such removals from occurring again. Thanks to another contributor, this original early-release codebase is again available.
- Vivaty (formerly Flux) Player X3D/VRML97 plugin for Internet Explorer (Windows) (not supported).
- Pivoron plugin for Netscape or Internet Explorer (release plans) from Nexternet which was acquired by MediaMachines in 2001. Not supported.
Many authoring tools have emerged since X3D can be used for any purpose without royalty fees.
Tool support for X3D components provides a feature comparison of major X3D authoring tools, for each player and each X3D component.
- X3D-Edit is the primary authoring tool used at NPS to create the X3D, Sourcebook and Savage example archives. Available free.
- AC3D is a small, simple, easy-to-learn 3D authoring tool that includes support for X3D export (Linux, macOS, Windows) (contact).
- Blender is an open-source 3D authoring tool that includes support for X3D import/export (FreeBSD Linux, macOS, Windows) (download).
- BS Content Studio Tool for easy and fast creation of 3D scenes and applications, from BitManagement (support) November 2014: new update announced.
- BS Editor is the original authoring tool from BitManagement.
- bvhacker supports editing of Biovision BVH files, which is a file format for recording post-processed motion-capture data. BVH is the basis for Humanoid Animation (HAnim) Motion Data Animation capabilities, which are supported in X3D version 4, Human Animation component, HAnimMotion node.
- insight3d is an open-source, image-based modeling tool for creation of buildings from photographs.
- MeshLab is an open-source, portable, and extensible system for the processing and editing of unstructured 3D triangular meshes (Win64, MacOS, Linux Snap). Downloads are available there as official release, or else on the github repository as a developer release.
- ParaView is a parallel visualization application to visualize large data sets.
- RawKee X3D Exporter Plug-in for Maya by Aaron Bergstrom
- Rez provides an open-source framework and tools for translating planetary terrain data and images to different formats including multi-resolution versions optimized for web browsing.
- SwirlX3D Editor is an X3D/VRML authoring environment from Pinecoast Software (Windows) (support).
- Seamless3d is open-source 3D modeling software designed for artists (support). Additional reference: Wikipedia-Seamless3d.
- SubmarineX3D is a simple X3D Editor from University of Perugia Italy (Linux, macOS, Windows) (contact).
- Titania X3D Editor is a free standalone X3D/VRML authoring tool primary developed for Ubuntu/Debian operating system.
- VIM (Vi IMproved) Editor does syntax highlighting and folding (collapsing of blocks) for both XML and VRML97. Nothing specific for X3D yet.
- Viper is a VRML97 source-code parser by NIST.
- VrmlPad is a professional editor for VRML programming.
-
Visualization Toolkit (VTK)
is an open-source toolkit, written in C++, for large scale 3D data visualization that offers X3D export.
Related: Mayavi is a Python interactive scripting interface for VTK that includes X3D export of mesh-based surfaces. - White Dune is a graphical VRML97/X3D editor, simple NURBS/Superformula 3D modeller, animation tool, and VRML97/X3DV command-line compiler. Also includes a converter from X3D to RenderMan Interface Bytestream (RIB) protocol. (FreeBSD, macOS, Linux, Unix, Windows).
- Wings 3D is an advanced subdivision modeler that is both powerful and easy to use. It can be used as a free open-source X3D/VRML authoring environment (Linux, macOS, Windows) (forum).
- Open-Source 3D Component Editor using X3DOM by Fraunhofer IGD is an example X3D scene editor that runs in a web browser.
-
Altova XMLSpy
is an
XML development environment for modeling, editing, debugging and transforming XML technologies.
- XMLSpy provides built-in support for numerous file types, with native support support added in v2020r2 for X3D (Extensible 3D), "a file format used for representing and communicating 3D scenes and objects embedded in applications." Features include context-sensitive parent-child node relationships and attribute values, plus full validation (screenshot).
- X3D-XmlSpyProject.spp (online) is an overview project for X3D specification-development work.
- XMLSpy *ContentCatalog.spp project files are also provided with each of the X3D Example Archives.
- X3DToolKit by INRIA Models and Algorithms for Visualization and Rendering (MAVERICK) is a portable LGPL free C++ toolkit for loading, displaying and processing X3D models, designed for 3D developers.
- X3D Java Scene Access Interface Library (X3DJSAIL) provides standard X3D Java interfaces with concrete implementation classes, all as open source. This application programming interface (API) library is strongly typed to avoid authoring errors, and is autogenerated from the X3D XML schema and X3D Unified Object Model (X3DUOM) to ensure correctness.
Legacy and unsupported X3D authoring tools:
- Octaga Exporter directly exported visual effects created using Autodesk 3DS Max into VRML and X3D.
- Vapour Technology: VRML Authoring Tools for computing orientations (Dizzy, Peek, SpinDoctor and Twister)
- Vizx3D (Internet Archive) 3D modeling and animating application that creates X3D v3.0 and VRML97 files. Features include HAnim 2001 single-mesh avatar support, an improved IndexedFaceSet/NURBS surface editor, subdivided surfaces, and multi-texture functions.
- Vivaty Studio (formerly Flux Studio) is a high-quality authoring tool from Vivaty. It is an easy-to-use, inexpensive, general-purpose, visually oriented, 3D modeling and animation application for X3D (not supported). This group also produced Flux Player and Flux Studio X3D/VRML97 viewer plugin and authoring tool for Internet Explorer (Windows) (not supported).
Numerous other resources provide support for authoring X3D.
Additional authoring support includes the following assets.
- Pellucid is a Java applet that simulates the VRML/X3D illumination model given a default view of a sphere, a default directional light with direction [ -1 -1 -1 ], and a default material.
- NIST Plugin and Browser Detector for server-side determination of VRML or X3D browser in use
- Tools often need to support offline validation of content that includes authoritative online urls for the XML DOCTYPE and Schema. An OASIS specification defines how to map authoritative urls to local copies. OasisXmlCatalogX3D.xml is one example how an application can accomplish that.
- The X3D Working Group is also showing how to best provide X3D + HTML5 support for the draft HTML5 Recommendation.
Books on Extensible 3D (X3D) Graphics
X3D Graphics is the international standard for real-time 3D communication.
- X3D for Web Authors by Don Brutzman and Leonard Daly, Morgan Kaufmann Publishers, Elsevier, April 2007, 468 pages.
- WebGl HOTSHOT by Mitch Williams, ISBN-13: 9781783280919, 306 pages, 2014. Chapter 1 shows how X3D complements WebGL.
- Visualizing Information Using SVG and X3D by Vladimir Geroimenko and Chaomei Chen, editors, Springer, 2008.
- Computer Graphics: From a Small Formula to Cyberworlds by Alexei Sourin, 3rd edition, Pearson Prentice Hall, Singapore, 385 pages, 2012. Chapter 14 discusses X3D and VRML.
- Networked Graphics: Building Networked Games and Virtual Environments by Anthony Steed and Manuel Fradinho Oliveira, Elsevier, 536 pages, 2009. Chapter 7 discusses X3D, X3D-Edit and DIS.
- Interactive 3D Multimedia Content: Models for Creation, Management, Search and Presentation, edited by Wojciech Cellary and Krzysztof Walczak, Springer London, 302 pages, 2012. Contributed chapters discuss X3D capabilities together with other standards, then describe significant implemented research work regarding 3D/VR/AR systems. Most works provide extensions based on the VRML/X3D standards. Online resource: Chapter 2, Interactive 3D Content Standards.
- Digital Simulations for Improving Education: Learning Through Artificial Teaching Environments, edited by David Gibson (University of Vermont, USA) and Young Kyun Baek (Korea National University of Education, Korea), IGI Global, 540 pages, April 2009.
- Core Web3D by Aaron E. Walsh and Mikaël Bourges-Sévenier, Prentice Hall PTR, Upper Saddle River, New Jersey USA, 1088 pages, 2000. Several chapters discuss developmental versions of X3D.
- X3D: Programmierung interaktiver 3D-Anwendungen für das Internet, Peter Schickel and Jörg H. Kloss, Addison Wesley, December 2009.
- VRML & X3D for virtual reality by KyungBae Park, KyungIn Kang and SeungWook Kwak, 21 Century, ISBN-10: 8984681903, 422 pages, 2006 (in Korean).
- X3D, Who are you? Focus on examples for Web 3D design by KyungBae Park and SeungWook Kwak, Global, ISBN-13: 9788955024135, 472 pages, 2007 (in Korean).
🔖 Books on Virtual Reality Modeling Language (VRML) 97
VRML design began in 1994 and the language became a stable International Standard in 1997. Of interest: X3D is a third-generation design that is fully backwards-compatible with the second-generation VRML 97 standard. Thus all design guidelines and technical details in the following textbooks remains relevant.
- VRML 2 Sourcebook by Andrea L. Ames, David R. Nadeau, and John L. Moreland, John Wiley & Sons, 1996. (also see VRML 2 Sourcebook examples in X3D)
- Annotated VRML 2.0 Reference Manual by Rikk Carey and Gavin Bell, Addison Wesley, Boston Massachusetts, 1997.
- Late Night VRML 2.0 with Java by Bernie Roehl, Justin Couch, Cindy Reed-Ballreich, Tim Rohaly and Geoff Brown, Ziff-Davis Press (Macmillan Publishers), 1997.
- VRML 2.0 Handbook by Jed Hartman and Josie Wernecke, Addison Wesley, Boston Massachusetts, 1996. Also see the Tenochtitlan examples.
- VRML: Exploring Virtual Worlds on the Internet, by Walter Goralski, Matthew Poli, and Peter Vogel, Prentice Hall PTR, January 1997.
- Das Einsteigerseminar VRML by Prof. Dr. Rolf Daessler, April 2001, BHV Publishing Group, 498 pages, in German. Available online.
- 3D User Interfaces with Java 3D by Jon Barrilleaux, Manning Publications, 2000. A guide to computer-human interaction in 3D with direct mappings to VRML.
Also available: VRML Resources.
There are three conformance test suites to help improve the quality of X3D and VRML players.
The Web3D Consortium offers compliance certification of this last suite. X3D Conformance Testing Program describes details.
The Web3D Consortium also supports the Conformance working group mailing list which includes list archives.
Of related interest: Quality Assurance (QA).
Numerous conversion tools are available for the various encodings of X3D and VRML.
X3D is a direct superset of VRML with three encodings:
XML encoding (.x3d),
Classic VRML encoding (.x3dv)
and
VRML97 encoding (.wrl).
X3D is designed so that all three encodings are equivalent, you can choose to use any of them.
Converting X3D scenes to/from VRML (.wrl) also works well, since X3D is 3rd-generation VRML. The functionality provided by the VRML97 specification matches the X3D Immersive Profile.
TODO. Describe how .wrz is gzip-compressed .wrl and so can be easily converted. Include a bookmark for ready reference.
TODO. Check if we ever specified something similar for .x3d files, and also how XML authors do it (for example .xml.zip or whatever) and includes directions/links.
Related: also see Export and Import by Applications on this page.
The following applications are known to have X3D or VRML output capabilities. Additional entries are welcome.
- Special mention #1. Castle Game Engine's Online Converter for 3D and 2D Models page supports glTF, X3D, VRML, Wavefront OBJ, STL, Collada, 3DS, MD3, Spine JSON and others (tweet).
- Special mention #2. X_ITE's Free Online X3D File Format Converter page can convert X3D, VRML 2.0 (.wrl), glTF (GLB), OBJ, STL, PLY, and SVG to an X3D format of your choice. Files are converted offline, i.e. no data is transferred.
- X3D players providing file-menu conversions (Save As) include BSContact, OctagaVS(pro), Castle Model Converter, X_ITE Sunrize, and Xj3D.
- Xj3D Open Source for X3D/VRML97 includes command-line and file-menu X3D translators between all three encodings. Xj3D can also import Collada files.
- X3D-Edit exposes all of these Xj3D conversion capabilities via a conversion panel embedded under the X3D...Import and ...Export menus. X3D-Edit can further import, export and also edit, validate Collada files.
- 🔖 XSLT Stylesheets convert .x3d scenes into alternate formats and encodings. These slidesets (and corresponding batch files) are bundled in X3D-Edit.
- 3D PDF Converter includes support for X3D export. This capability allows users to easily visualize, validate and then export CAD data in a suitable format for import into a 3rd Party System.
- Accutrans 3D by MicroMouse Productions provides accurate translation of 3D geometry between the file formats used by many popular modeling programs.
- Anark is able to export product data into high-precision B-rep and lightweight mesh formats including SolidWorks, Inventor, ACIS, CATIA V4/V5, Parasolid, STEP, NX (formerly Unigraphics), IGES, COLLADA, DWF, X3D, and VRML.
- Ayam is a free open-source 3D modeling environment for the RenderMan interface with X3D import and X3D export.
- BaconXJF open-source 3D Web Formats Import-Export Tool for Maya and Maya LT includes X3D support. "It's a work in progress, but a good start..." Created by Aaron Bergstron, original author of the RawKee X3D Exporter for Maya. Demonstration videos also available.
- BitManagement capabilities include BS Converter for 3ds max and BS Converter for Blender.
- Blender provides excellent top-level import/export support, as described by Blender Model Export To X3D using X3D-Edit.
- CAD Exchanger is commercial C++ software to view and convert 3D models that supports multiple formats including VRML and X3D. (announcement)
- Castle Model Converter (formerly tovrmlx3d) has Blender export plus many additional features. Multiple input formats can be converted to X3D, VRML and STL.
- Chisel VRML Optimisation Tool with autoinstaller and documentation provided by Halden Virtual Reality Centre. Originally built by Trapezium and maintained by NIST.
- Cura3D printing software supports X3D model import. Cura3D can output to multiple 3D printers and also export G-code.
- InstantReality X3D encoding converter is an online translator between ClassicVrml or XML (.wrl) encoding, and can also convert into X3DOM outputs (HTML5 or XHTML5). Free for non-commercial use.
- MeshLab is an open source, portable, and extensible system for the processing and editing of unstructured 3D triangular meshes (Win64, MacOS, Linux Snap) (download).
- Modo by Foundry is a sophisticated authoring tool that includes X3D export.
- NIST VRML to X3D Translator was originally written by Qiming Wang. An updated version of the source (and a .zip distribution) are maintained on SourceForge. The translator is also bundled in X3D-Edit under the X3D/Import/VRML97 menu.
- Okino Polytrans/NuGraf is the premier industry translation tool that can convert many many different file formats (including Collada) with X3D/VRML97 import export and also support for VRML 1.0. Their original 2002 press release describes the central value of the VRML/X3D scene graph as a detailed, extendable design used in the Okino converter architecture.
- Open Cascade is an open source (LGPL) geometry kernel written in C++ uses PythonOCC which also includes X3DOM support. The Web3D CAD public wiki includes a STEP to X3D Python script.
- PDF3D provides support to convert, edit, store and share 3D data in PDF. File-format support includes VRML97.
- Project Rawkee: Open-Source X3D Plugin for Maya by the Archaeology Technologies Laboratory (ATL) of North Dakota State University (NDSU).
- SteelVis (CIS/2 to VRML and IFC Translator, aka CIS/2 Viewer) by National Institute of Standards and Technology (NIST)
- Step Prolog Restful Interface (SPRI) Converter allows browsing the content of STEP files, which can contain multiple geometric models. Further information is found on the Web3D CAD public wiki.
- SwirlX3D Translator is an enhanced version of the Viewer that permits Collada and 3DS files to be imported into VRML or X3D (Windows) (support).
- Tetra4D supports 3D PDF conversion of PRC and U3D models to/from X3D within Adobe Acrobat.
- Unity3D Game Manager export:
- Unreal Realm of Concepts: Unreal to X3D Exporter by Dave Arendash
- view3dscene supports VRML/X3D, Collada, OpenInventor 1.0, 3d Studio Max 3DS, Quake 3 MD3, Wavefront OBJ and Videoscape GEO.
- Vivaty has utilities and converters for Google Earth KML/Sketchup, Autodesk 3DS Max, Autodesk Maya, and Unreal. Vivaty Studio also includes Collada import.
- VRML 1.0 to VRML97 Converter by Octaga
- VrmlMerge can convert VRML to X3D, merge VRML 97 files, and provides .wrl examples. Free for non-commercial use, requires Java.
- XIOT X3D Input/Output Toolkit library provides an open source generic C++ toolkit to import and export X3D in its different XML encodings: ASCII and binary. Original development includes a Fast Infoset (FI) based X3DB compressed binary encoding.
The X3D Examples Archives demonstrate how X3D nodes and scenes work. Thousands of scenes are provided in all X3D encodings. You can browse them individually online or download fully complete, separately installable .zip archives. More X3D models can be found at Web3D Examples and the sites listed at Additional Example Scenes below.
A simple example test scene is HelloWorld.x3d provided in a variety of X3D encodings: .x3d XML .x3dv ClassicVRML, .wrl VRML97, .html listing, .html X_ITE, .xhtml X3DOM, .java Java source, .json JavaScript Object Notation, .py Python source, .ttl Turtle source with SPARQL query, .java Java source, .x3db compression, XML canonicalization (C14N), and .png image
Special testing distribution. A comprehensive collection of all JSON example scenes is available at X3dExampleArchivesJsonScenes.zip (MD5 checksum) plus current output from the X3D JSON build process at build.log.json.txt.
Production notes:
- README.ArchivesX3D.txt summarizes archive contents and lists key links.
-
Build scripts are written using
Ant with matching autogenerated
build.xmlfiles in each archive's root. - You can view X_ITE or X3DOM versions of each model by selecting the corresponding links. This is far easier than the historic approach to install a player plugin in your Web browser.
- These examples are maintained by the Web3D Consortium and are all protected under an open source license, provided free for any use.
- The Sourceforge X3D Project is the site where master versions of most X3D examples are maintained.
- Quality Assurance (QA) regression testing provides exhaustively thorough validation checks on all X3D example scenes.
- Each example scene is provided using all X3D file encodings.
- Authors must be careful when using AI-based tools to autogenerated content. Further considerations can be found at Using AI when contributing to Castle Game Engine.
-
Archived X3D examples that include AI-generated content shall also have document-level metadata noting such contributions.
For instance
- <meta name='warning' content='original X3D scene produced by AI large language model (LLM), careful review and precautions are warranted'/>
-
Zipped example archives start with the directory structure
www.web3d.org/x3d/content/examplesin order to match the online addresses for most examples, and also to allow side-by-side installation of local archives for easier user access.
🔖 Example scene archive details:
-
🔖
X3D for Web Authors Examples Archive
(license)
-
🔖
X3D for Advanced Modeling Examples Archive
(license,
README)
-
🔖
Basic X3D Examples Archive
(license,
README)
-
🔖
ConformanceNist Test Suite X3D Examples Archive
(license,
README)
-
🔖
HumanoidAnimation X3D Examples Archive
(license,
README)
-
🔖
VRML 2 Sourcebook X3D Examples Archive
(license,
README)
-
🔖
Savage X3D Examples Archive
(license,
README)
-
🔖
SavageDefense X3D Examples Archive (restricted access)
(license,
README)
🔖 Source version control is available for developers wanting to track or contribute to these X3D example archives.
- Use NetBeans, X3D-Edit or some other subversion client (such as TortoiseSVN or Collabnet) to check out the version-control source and project information.
-
Decide whether to use
anonymousaccess or else a personal sourceforge account. -
You can check out one of the archives (for example, the Basic archive) as follows:
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Basic
usually to a local directory such as
C:\x3d-code\www.web3d.org\x3d\content\examples\Basic - Further links and information available via the x3d sourceforge project.
Additional X3D example scene collections designed to demonstrate VRML/X3D capabilities include the following.
- Web3D Consortium Examples include contributions that highlight Web3D Consortium member achievements.
- X_ITE X3D Examples offers an amazing set of interactive models that run in any browser. This is an outstanding showcase of what is possible with X3D.
- Castle VRML / X3D demo models which were produced for the Kambi/Castle game engine by Michalis Kamburelis.
- H3DAPI examples repository and example scenes
- InstantReality examples inspired by actual studies, small demos, and experiments.
- IrishSpace (video) was a volunteer effort to create a VRML Space Exhibit for the Children of Ireland. The project resulted in a multimedia space adventure in which a group of future emigrants set out from Earth aboard the Jeanie Johnston to settle the Solar System. This content was designed and built by Paul S. Hoffman, Len Bullard, and many other individuals.
- Alexei Sourin's book Computer Graphics: From a Small Formula to Cyberworlds provides online examples including Virtual Campus of Nanyang Technical University (NTU) Singapore.
- Tenochtitlan is a large VRML site illustrating the 1519 history of Cortes and Moctezuma on the island city of Tenochtitlan, center of the Aztec Empire. This content was designed by Delle Maxwell as a companion piece to the VRML 2.0 Handbook.
- BitManagement Interactive Demos
- 3D CAD Browser .com has both commercial and kind-of free (tradable) models available. Output formats include .x3d and .wrl formats.
The following applications are known to have X3D and VRML input/output capabilities. Additional entries are welcome.
Related: also see Conversions and Translation Tools on this page.
- Autodesk 3DS Max exports VRML.
- Chemistry Markup Language (CML) examples in the public X3D Basic Examples Archive show how to covert CML models into X3D using a simple stylesheet.
- CAD Assistant by OpenCascade is a viewer and converter for 3D CAD and mesh files, free for both personal and commercial use. CAD Assistant supports X3D and VRML1.
- Chimera by UCSF is a highly extensible program for interactive visualization and analysis of molecular structures and related data. Chimera exports X3D and VRML97.
- Clara.io can be used to create or import models, animate them and render online. Support is provided for multiple import/export data exchange formats.
- ESRI ArcScene with 3D Analyst extension can export an assembled GIS scene to VRML and optionally GeoVRML.
- Jmol is an open-source Java viewer for three-dimensional chemical structures, with features for chemicals, crystals, materials and biomolecules. Jmol can illustrate most molecular-model features via VRML97 and X3D (XML) export.
- Maple provides powerful math-oriented technical computing software for engineers, mathematicians, and scientists. Maple 13 exports X3D.
- Mathematica is a powerful computational tool for numerics of any precision, symbolics, or visualization. Mathematica can export X3D and VRML.
- Live Interior 3D Pro includes export to VRML and X3D.
- Integrated Facility Management (IFM) of Sydney Australia has adopted X3D for display of Building Information Models (BIM) in its Archibus SISfm product using X3DOM.
- OpenJSCAD (github, discussion, tweet) provides a programming approach to develop models for 3D printing. OpenJSCAD is inspired by OpenSCAD, the Programmers Solid 3D CAD Modeller. Also getting tracked as part of X3D for Advanced Modeling: Tool Conversions.
- PMOD 3D Imaging Rendering Tool (P3D) enables interactive investigation of volumetric medical data and imagery as part of modeling tool suite.
- Rhino includes VRML export and apparently X3D export as well.
- SketchUp Pro by Trimble can export VRML files
- SOLIDWORKS by Dassault Systemes includes VRML import and export
- VMD is a molecular visualization program for displaying, animating, and analyzing large biomolecular systems using 3D graphics and built-in scripting. VMD is designed for modeling, visualization, and analysis of biological systems such as proteins, nucleic acids, lipid bilayer assemblies, etc. and may be used to view more general molecules. Export features include support for X3D, VRML97 and VRML 1.0.
- VRMLout for AutoCAD and VRML Translator for Inventor can publish AutoCAD 3D models and Autodesk Inventor assemblies on the Web.
Feedback is welcome on any X3D topic. Scene authors and interested users are always welcome to participate in the X3D Graphics community.
- Comments, questions and trouble reports help to improve X3D resources or clarify the X3D specifications.
- Web3D mailing lists are active and archived. These are a great place to ask a question or search for earlier answers.
-
Web3D Standards Comment Form
is used for identifying specification issues, detailed bug reports, suggestions and changes.
- Reporting problems and recommending changes are important steps, they prevent grief for future authors and implementers.
- Sending in the report gets the issue into the bug-tracking system and also sent to the mailing list for discussion.
- If you first login as a Web3D Consortium member, a log of your posts is maintained for your convenience.
-
All opinions are valued. Dialog, lessons learned, success stories and alternatives are always considered helpful as part of our technology explorations and mailing-list discussions.
- Our overarching goal is to compatibly improve X3D examples, tools, and specification prose for the X3D and HAnim International Standards.
- Dedicated diligence supports long-term usage, interoperability, and archival stability of interactive 3D graphics models for the Web.
- Since 1994, all VRML and X3D progress has occurred through cooperative community efforts by industry, academia, agencies and interested professionals.
-
Web3D Consortium members
actively support X3D specification development.
- We follow an open and proven process, described in our Standards Submission Policy.
- Mantis issue tracking by working-group members keeps track of details, alternatives and resolution for each specification issue. (Secondary login required for Web3D members.) Administration details are available on the Mantis documentation.
- Web3D Consortium github (member-only access) is used to maintain editors-draft Web3D specifications in version control.
- All draft X3D specifications are first developed by X3D Working Group participants.
- All draft X3D specifications are discussed by the open community on the x3d-public mailing list.
- Following certification by Web3D Consortium members, member-country delegations in the International Organization for Standardization (ISO) ratify and approve final status as an International Standard (IS).
-
Further motivation:
interactive 3D graphics continues to steadily advance, and the Web is the next major frontier.
-
We are working to make 3D a first-class media type on the Web
that has broad usability similar to images, vector graphics, audio and video.
- Experienced 3D authors know that making a great 3D model takes a lot of work.
-
(Painful) humor:
we have found a task that is just as hard:
rebuilding that same 3D model three years later, because the previous proprietary software is no longer usable. Ouch.
-
X3D is a good fit for the
Open Web Platform (OWP)
for publishing
rich interactive experiences, powered by vast data stores, that are available on any device
. Combined technology standards include HTML5, Cascading Style Sheets (CSS), Javascript, Scalable Vector Graphics (SVG) and MathML.
-
We are working to make 3D a first-class media type on the Web
that has broad usability similar to images, vector graphics, audio and video.
-
🔖
Get involved! You too can be part of this great progress.
- Join the ongoing mailing list discussions to learn more and contribute your ideas about 3D on the Web.
- The Projects Wish List lists many interesting developer opportunities with potentially broad impact.
-
Among other things,
Web3D Consortium membership
provides a
safe haven
for companies to carefully look at possible contribution of proprietary technology, ultimately becoming royalty-free capabilities for unrestricted use on the Web. - Anyone can help build the Web. Thanks for considering these important possibilities.
Need something else? You can contact Web3D Consortium or else contact X3D Working Group cochairs for any direct or private inquiries.
Questions, suggestions, additions and comments regarding this X3D Resources page are also welcome. Please see the Contact section below.
The X3D Standards are royalty free and published openly online by the Web3D Consortium under a cooperative agreement with the International Standards Organization (ISO). It was among the first International Standards to be published online and without charge. Please contact Web3D to request permission to use that work.
There is a mobile subset of the X3D vocabulary called the X3D Interactive Profile. Conversion tools are likely to emerge that can down-convert scenes using the X3D Immersive Profile or VRML97 for lightweight mobile and embedded applications.
There has been a lot of dialog about X3D Mixed and Augmented Reality (MAR) and whether a new X3D Mobile Profile is possible that harmonizes capabilities for lightweight scenes running with HTML5 on mobile devices, possibly including essential AR and GPS capabilities. How can such X3D capabilities best be aligned with HTML?
Join the X3D Graphics public mailing list to join the discussion, learn more and contribute!
The X3D Examples archives include thousands of open-source models contributed by Web3D Consortium members.
You can also search for X3D models at these sites:
- 3dbar.net free collections from 3D designers
- 3D Model Search Engine by Princeton Shape and Retrieval Analysis Group (various sources)
- Archibase Planet free model collections from 3D designers
- archive3d.net model search and download
- Level of Detail for 3D Graphics models download
- Okino 3D Computer Graphics Links for models and other assets
- MakerBot Thingiverse design community for discovering, making, and sharing 3D printable things
- Shapeways 3D Printing Service and Marketplace, which also offers guidance on exporting VRML files for Shapeways.
- Turbo Squid (for purchase and free)
- yeggi.com Search Engine for 3D printable Models
- yobi3d.com (proprietary, available for non-commercial use)
TODO: we need a more up-to-date way to install X3D plugins for PowerPoint.
Open-source libraries for multiple programming languages are available to support programmers who want to build, modify and use X3D models in their applications.
Each library uses the strict typing to only permit creation and validation of high-quality models that conform to node, field and value requirements of the X3D Architecture.
Correspondences between various file formats and programming languages are shown in the X3D Graphics Standards: Specification Relationships diagram.
| Languages | Maturity | Overview | Support |
|---|---|---|---|
| X3DUOM | Stable | X3D Unified Object Model (X3DUOM) is a full set of object-oriented interfaces for all nodes, fields and statements in the X3D Architecture Specification. Variants are autogenerated for each X3D version that precisely define all node and field types. X3DUOM is in turn used to generate a variety of useful products and codebases, allowing them to track all X3Dv4 developments. Primary version: X3dUnifiedObjectModel-4.0.xml | X3D 3.0‑4.0 |
| Java | Stable | X3D Java Scene Access Interface Library (X3DJSAIL) supports programmers with standards-based X3D Java interfaces and objects, all as open source. Self-validating Java programs are tested for all models in the X3D Examples Archives. | X3D 3.0‑4.0 |
|
ECMAScript (JavaScript) |
Experimental |
X3D JSON Loader (X3DJSONLD) can load different encodings of X3D models into the JavaScript Document Object Model (DOM), which is useful for HTML scripting. It has also implemented server-side X3D programming using node.js, Java nashorn jjs and Python run-time environments. Many X3D players have embedded their own JavaScript support for X3D. Future work may produce an open-source implementation of the X3D Javascript Scene Access Interface (SAI). |
X3D 3.3‑4.0 |
| JSON | Stable | X3D JavaScript Object Notation (JSON) Encoding has been fully developed. The X3D to JSON Stylesheet converts .x3d XML to .json and is tested for all models in the X3D Examples Archives. Current work is focused on updating the draft X3D JSON Schema to near-final draft-08 status. | X3D 3.0‑4.0 |
| Python | Development | X3D Python Scene Access Interface Library (X3DPSAIL) supports programmers with standards-based X3D Java interfaces and objects, all as open source. Self-validating Python programs are tested for all models in the X3D Examples Archives. Deployed on PyPi as Python X3D Package x3d.py. | X3D 3.0‑4.0 |
| C, C++, C# | Development | X3D C/C++/C# Language Bindings are under development that match the X3D Scene Access Interface (SAI) specification. Further updates and a potential release are expected during Summer 2019. | X3D 3.3 |
| Object Pascal | Development | Castle Game Engine is a free open-source 3D and 2D game engine using modern Object Pascal. | X3D 3.0‑4.0 |
Much work is active and continuing. We are working to make X3D model construction, modification and publication both consistent and easy for any programmer.
This work is especially important for X3D v4 Implementations to advance the draft specification. Please join the x3d-public@web3d.org open mailing list if you want to get involved.
X3D Quality Assurance (QA) identifies errors and warnings in order to make X3D scene content more portable and reliable. Improved Quality Assurance (QA) helps achieve intended results in X3D scenes and metadata.
This is important. providing high confidence that when 3D modeling errors occur, they can be detected and then corrected. As a result, X3D models can run in many different file formats and programming languages, equivalently and correctly.
Wow, that's a lot!
Detailed build logs for the X3D Examples Archives provide comprehensive conversion records of test processes.
TODO
The X3D Scene Authoring Hints: Validation describes DOCTYPE (DTD) and XML Schema validation of X3D scenes in detail.
The X3D Specifications are the authoritative reference for determining correctness of X3D scenes.
Of related interest: Conformance Testing.
Extensible 3D (X3D) Graphics
Open security by design, as specified by W3C's XML Security Recommendations, provides the strongest approach for secure Web documents used internationally on the Web.
The .x3d encoding is XML based, which means that the full power of Web Security can be applied to X3D Graphics models.
X3D model security supports multiple existing and emerging capabilities:
- Multiple forms of validation and Quality Assurance (QA) are available to prevent unwanted insertions of malicious content in X3D models.
- Strongly typed Metadata nodes can be inserted in any X3D model. Interchange conventions are expected to emerge with growing usage.
- Security mechanisms such as encryption and authentication can be applied to high levels of detail (LOD), allowing authors to protect intellectual property at high resolution for authorized users while still rendering simple unrestricted models for other users.
- XML Security compatibility provides two crucial technologies: the W3C XML Encryption and XML Signature (digital authentication) Recommendations.
- XML Security mechanisms can be applied to entire scenes in .x3d files (XML documents) or scene subgraphs within an .x3d file (XML fragments).
- XML Encryption Requirements include super-encryption, multiple signatures, and also optional declaration of alternative encryption algorithms in the unencrypted envelope header.
- XML Security software libraries are broadly available and usable by international partners in any context, including Web commerce.
- Data-centric security is independent of network-transport security.
- W3C Efficient XML Interchange (EXI) Working Group efforts for best practices are ensuring that EXI-based data compression of XML documents can be used compatibly with XML Security. Example prerequisite: EXI compression must precede encryption or else pseudo-randomization of bits precludes compression benefits.
- W3C Security Interest Group serves as a forum for discussion about improving standards and implementations to advance the security of the Web.
- Web3D Consortium members expect that required support for secure url addresses using https and ssl/tls protocols is likely to be included in X3D version 4.0.
- Full compatibility with XML Security capabilities is required for the next-generation X3D Efficient Binary Encoding under development.
- XML Signature Syntax and Processing Version 2.0, W3C Working Group Note 23 July 2015, describes XML digital signature processing rules and syntax. XML Signatures provide integrity, message authentication, and/or signer authentication services for data of any type, whether located within the XML that includes the signature or elsewhere.
- XML Signature Best Practices, W3C Working Group Note 11 April 2013, collects best practices for implementers and users of the XML Signature specification. Most of these best practices are related to improving security and mitigating attacks, yet others are for best practices in the practical use of XML Signature, such as signing XML that doesn't use namespaces, for example.
- W3C Recommendation for Cross-Origin Resource Sharing (CORS) now defers to the WhatWG Fetch standard. Also of interest: Wikipedia summary provides precautions which gain increasing importance as X3D pages are embedded in HTML5 pages.
Most of these capabilities are demonstrated and formalized already. Several are already working-group efforts in progress. Therefore, this emerging combination of capabilities can be considered low risk, with high probability of full convergence eventually occurring.
Security vulnerabilities unique to X3D are relatively few but deserve attention.
-
DEF/USE recursion.
USE nodes are references to previously defined nodes.
Self-referential USE nodes are invalid and are specifically disallowed by the
X3D4 Architecture, Concepts, 4.3.5 Transformation hierarchy.
The following is an example of a node in the scene graph that is its own ancestor:
DEF T Transform { children [ Shape { ... } USE T ] } -
Inline recursion.
If a scene directly or indirectly tries to Inline or IMPORT itself,
non-terminating recursion is the likely result.
This problem is both a run-time flaw and a security vulnerability.
Since a scene can modify url values, potential violations need to be rechecked at run time.
X3D Specification requirement:
X3D4 Architecture, Networking component, clause 9.4.2 Inline.
A scene must not Inline or IMPORT itself, directly or indirectly, in order to avoid nonterminating recursion. X3D players SHALL NOT honor self-referential Inline or IMPORT loops in order to avoid security vulnerabilities." - X3D specification review. As part of advancing X3D to version 4.0 in 2023, X3D practitioners performed a full security review of all X3D specifications to come up with a consistent and comprehensive way to document all potential security vulnerabilities.
XML/HTML security resources relevant to X3D scenes:
X3D player and tool support for security:
The Web3D Consortium X3D Working Group participates in the W3C Security Activity and EXI Working Group to continue aligning X3D with ongoing developments.
Interested? Member participation is welcome.
The X3D Showcase DVD was produced twice each year by the Web3D Consortium for outreach to members and interested individuals. Web distribution of products no longer makes such a resource necessary.
The Web3D Conference includes excellent papers, panels and tutorials each year. Offered annually since 1995, the conference is sponsored by ACM SIGGRAPH and the Web3D Consortium.
The X3D for Web Authors textbook includes a comprehensive set of online examples, slidesets and videos. Coverage includes all of VRML and the X3D Immersive Profile. The X3D for Web Authors Course Adoption page lists an introductory tutorial and chapter classes as X3D instruction.
The VRML 2 Sourcebook also includes a comprehensive set of online examples and slidesets. Coverage of the Virtual Reality Modeling Language (VRML) 97 approximately equals the X3D Immersive Profile.
Additional training and tutorial resources include:
Numerous demonstration videos can be found online that show X3D models and applications in action.
- Web3D Consortium Videos showcases many member interesting examples using X3D, VRML and HAnim.
- Web3D Consortium YouTube Videos includes multiple video playlists organized by topic area.
- Web3D Conference YouTube Videos collects and archives videos from the annual Web3D Conference, now in its 21st year.
- X3D for Web Authors online course videos (both on YouTube and at NPS)
- Bit Management showcase and additional vimeo demo videos
- Fraunhofer IGD YouTube videos
- Damon Hernandez Metaverse One YouTube videos
- Michalis Kamburelis Castle Game Engine YouTube videos
- Sebastian Ullrich - Heart Surgery Simulation with Blender and H3D YouTube video
- Virginia Tech VTVisionarium YouTube videos
- VRML X3D and Realtime Web3D YouTube videos by m17design
- Archival and Web-based Visualization of Volumetric Scans and Clinical Data for TBI using the X3D International Standard by Nicholas Polys and Andrew Wood, with proposal coauthored by Don Brutzman
- Mathworks Matlab Simulink 3D Animation videos, with X3D Support, VRML Support, and Use CAD Models with the Simulink 3D Animation Product pages.
The X3D for Web Authors book includes a full set of course video lessons for learning X3D.
VRML design began in 1994 and the language became a stable International Standard in 1997.
VRML97 is fully compatible with X3D and is the basis of the ClassicVRML .x3d encoding.
Open Inventor (OI) is an object-oriented 3D toolkit offering a comprehensive solution to interactive graphics programming problems. Its architecture is a direct predecessor of VRML and X3D.
Of interest: following a Birds of a Feather (BoF) session at
SIGGRAPH 1994,
the original VRML design was directly based on a competitive community selection of the
Open Inventor .iv format
as being the current "best of breed" for Web markup of scene graphs.
This architectural design similarity provides fundamental common ground between Open Inventor, VRML97 and X3D.
Assets:
Papers:
- Paul S. Strauss and Rikk Carey, An object-oriented 3D graphics toolkit, Silicon Graphics Computer Systems, Mountain View, California. In Proceedings of ACM SIGGRAPH '92, pages 341-349.
- Gerd Hesina, Dieter Schmalstieg, Anton Fuhrmann, and Werner Purgathofer, Distributed Open Inventor: A Practical Approach to Distributed 3D Graphics Vienna University of Technology, Austria. In Proceedings of the ACM Symposium on Virtual Reality Software and Technology (VRST '99), pages 74-81.
X3D Tooltips provide authoring tips, hints and warnings for each node and field in X3D.
X3D 4.0 Tooltips in English (online at https://www.web3d.org/x3d/tooltips/X3dTooltips.html) are the primary asset for X3D authors. Now added: nodes for draft X3D v4.1.
Prior versions in multiple languages are also available:
Developer support:
Interested in contributing, by updating an existing set of tooltips or creating a new translation? X3D Tooltips inquiries are welcome.
Questions, suggestions, additions and comments about this X3D Resources page are welcome. Please send them to Don Brutzman (brutzman at nps.edu).
Master version of the X3D Resources page is available online at https://www.web3d.org/x3d/content/examples/X3dResources.html and available in Sourceforge version control.
Updated: 29 March 2026
