We are proud to announce the release of X3DOM 1.5. This most recent installment of our popular Declarative3D polyfill shines with lots of new features and a wagon load full of bugfixes.
With version 1.5, X3DOM also overcomes some limits of the scenegraph structure by using new internal structures for culling and fast rendering, decoupled from the frontend graph inside the DOM, which, however, still remains intact as usual.
New Features
- Generally improved traversal and rendering performance with a new transformation and volume caching infrastructure
- Culling techniques for large model rendering (some of them still experimental) – check the video, or see the tutorial
- Improved experimental binary geometry container and encoding
- BinaryGeometry with more compact encoding that only uses 7 Bytes per triangle (see example) and works nicely on mobile devices
- POPGeometry for progressive streaming and LOD – see the paper and project page here, or directly check some examples
- Experimental BVH Refiner node, for rendering of large, regular data sets with dynamic LOD (see tutorial and example)
- Shadow support for large scenes and all lights types (see tutorial for more information or click here or here for a demo)
- Convenience object ‘Moveable’ for object manipulation
- Additional X3D component plugins (not part of the HTML profile, i.e. not part of the x3dom.js package)
Fixes and Improvements
- Many internal improvements and bugfixes
- DOM/Scene update improvements (e.g Route removal implemented)
- Improved picking functionality to enhance trade-off between precision and number of possible ids
- Fullscreen convenience method x3dom.toggleFullScreen()
- RenderedTexture extensions for rendering normal buffer or stereo (currently only for Oculus Rift)
For a detailed list of changes refer to the CHANGELOG file.
Grab the frozen 1.5.0 version here or fly with the cutting-edge development version here.