Comparing X3D Browsers and Engines
X‑Ite, X3DOM, and the Castle Game Engine — three tools that all deal with X3D. Together, they form a complete ecosystem for 3D Web visualization.
- X‑Ite → A full X3D browser implemented in JavaScript/WebGL
- X3DOM → A declarative HTML+X3D framework for embedding 3D in the DOM
- Castle Game Engine - Best for game and application development
- X3D (Standard) → The ISO/IEC specification defining the 3D language
How They Fit Together (Strategic View) - Think of them as layers:
- X3D → the language
- X‑Ite → the full browser implementing the language
- X3DOM → the HTML‑native framework for easy embedding
- Castle Game Engine - Full Engine
High‑Level Comparison Table
| Features | X3DOM | X_Ite | Castle Game Engine | X3D v4 (ISO Standard) |
| What it is | HTML‑integrated rendering framework | Full WebGL‑based X3D browser | Full game engine |
The 3D language + architecture ISO/IEC 19775/19776 standard |
| Technology Base | JavaScript + WebGL + HTML DOM | JavaScript + WebGL | Object Pascal + OpenGL/Vulkan |
Technology‑agnostic specification |
| Standards Alignment | Partial (subset of X3D) | High (X3D, VRML, glTF) | None (not a standards engine) |
Defines X3D v3/v4 |
| Primary purpose | Based on X3D v3; partial v4 concepts | High compliance with X3D | Build 2D/3D games & applications | Official specification for X3D v4 |
| glTF support | Limited |
X_ite supports glTF |
Yes | Native integration in the standard |
| VRML support | via X3D compatibility |
X_Ite supports VRML |
No | Not applicable (standard only) |
| DOM integration | Deep — X3D nodes live in HTML DOM | DOM events + partial X3D behavior | None | Not a runtime; DOM integration defined conceptually |
| Interactivity Model | DOM events + partial X3D behavior | Full X3D event model, routing, scripting | Game‑engine scripting (Pascal) | Defines event model, scripting, sensors |
| Deployment | Browser‑based | Browser‑based | Desktop, mobile, consoles | Implemented by runtimes (e.g., X‑Ite) |
| Use cases | Education, prototyping, CH projects, declarative demos | Production‑grade X3D viewing, full feature coverage | Games, simulations, standalone apps | Authoring, interchange, long‑term standardization |
| Maintenance status | Actively maintained (2024–2025) | Actively maintained | Actively maintained |
Actively evolving (Web3D WG tracking) |
| Complexity | Very easy to embed | More complex, full engine | High | Depends on implementation |
| Plugin‑free | Yes | Yes | N/A (native apps) | Yes (standard only) |
X3DOM — Declarative 3D in HTML
X3DOM (pronounced “X‑freedom”) is an open‑source JavaScript framework that lets developers embed declarative 3D graphics directly into HTML pages, without plugins. It integrates 3D content into the HTML DOM, enabling interaction through standard web technologies like CSS and JavaScript. X3DOM is the easiest way to embed X3D directly in HTML. Its strengths:
- X3D nodes become HTML elements
- No build tools or shaders
- Great for education, prototyping, and long‑term 3D deployments
It implements a large subset of X3D, but not the full standard.
X‑Ite is a complete X3D runtime in JavaScript/WebGL.
X‑Ite is an open‑source, JavaScript‑based X3D browser that uses WebGL to render interactive 3D graphics directly in modern web browsers—no plugins required. It supports:
- X3D
- VRML
- glTF
- full event routing
- scripting and sensors
It’s ideal for:
- 3D applications needing fidelity
- standards demonstrations
- browser‑based 3D apps with full X3D semantics
Castle Game Engine — A Full Game Engine
Castle Game Engine is a general‑purpose game engine, not a Web3D/X3D tool. It supports:
- OpenGL/Vulkan rendering
- glTF
- physics
- animations
- scripting in Object Pascal
It’s designed for:
- games
- simulations
- standalone apps
- cross‑platform deployment
It does not implement X3D semantics or the X3D event model.
X3D — The Standard Specification
X3D is the ISO/IEC standard that defines:
- the 3D scene graph
- nodes and components
- event model
- scripting
- profiles and architecture
- glTF integration (v4)
It is not a runtime — it is the language that engines like X‑Ite and frameworks like X3DOM implement.
Together, they form a complete ecosystem for 3D Web visualization.
