[x3d-public] XML3D 5.0 and X3D V4.0
Kristian Sons
kristian.sons at dfki.de
Thu Nov 26 23:14:32 PST 2015
Dear X3D community,
I am happy to announce that we released version 5.0 of XML3D. It is a
major clean-up of things we learned within releases 4.0-4.9 since 2012.
Moreover, it includes feedback from the community, further streamlines
the abstract model and integrates some CSS properties. Finally, and
maybe most important, we have a reasonably complete specification:
http://xml3d.org/xml3d/specification/5.0/
What's that got to do with X3D? Well we think that XML3D 5.0 includes
some concepts that might be interesting to consider for X3D V4.0. We
would like to highlight some aspects we focused on in the design of
XML3D, but also some hurdles we had to overcome and that might be good
to avoid for a web-integrated version of X3D.
So starting from the X3DOM integration model (DOM API, DOM events, HTML
elements as texture source and additional more efficient means to
represent and transmit data), we think that (at least) the following
amendments are essential for a web-integrated X3D V4.0:
- _Streamline the model_: X3D has way to many nodes. Same is true for
X3DOM. In particular if compared to HTML. The Web Components initiative
has been started to be able build and encapsulate functionality that can
be derived from existing functionality (similar to Prototypes). It
includes Custom Elements which are motivated to "Rationalize the
platform." Same should apply to X3D. Many nodes can be implemented with
few lines of JavaScript or WebComponents. A similar discussion on
"convenience nodes" was already started on this mailing list [1].
In XML3D, we expose data processing to the user to build higher-level
functionality from basic blocks. In the end, we have only like 5 real
scene elements (mesh, model, light, view and group).
_ Support CSS_: X3DOM has some support for CSS 3D transforms, but
otherwise no CSS properties are supported (for elements other than the
X3D element). Support at least "display", "visibility", "z-index" and
other useful properties.
- _Resolve the DAG conflicts_: There are still unsolved issues how to
solve inconsistencies between the DOM tree and the X3D DAG
representation! I brought up the issue on the mailing list [2] and there
were three (valid) solution sketched how it could be resolved (I prefer
the web-like way of dangling references). How ever the final solution
looks like, it needs to be defined.
- _Strip Routes and Sensors_: Routes are a nice concept, but we do not
need an additional event system in the web. I think everything can be
solved with DOM events, observers and there are enough APIs to generate
time events.
- _Strip Prototypes_: See above: The four technologies behind
WebComponents provide similar functionality.
- _Strip Programmable shaders_: The consortium resisted from adding
platform-specific elements for so long. This component is horrible. It
ties the scene not only to a specific graphics API, but also to a
specific implementation and to a specific rendering algorithm (you can't
use a single shader for forward & deferred shading). Better use shade.js ;)
These are just recommendations from our lessons-learned. They should not
be regarded as criticism. Some are really essential to solve (DAG),
others would make the next version of X3D leaner and closer to web
concepts. On the other hand, if applied, the result would be very
similar to XML3D ;) But well, that is what we worked on over the last years.
Kind regards,
Kristian
[1] http://web3d.org/pipermail/x3d-public_web3d.org/2015-July/003474.html
[2] http://web3d.org/pipermail/x3d-public_web3d.org/2015-April/003310.html
--
_______________________________________________________________________________
Kristian Sons
Deutsches Forschungszentrum für Künstliche Intelligenz GmbH, DFKI
Agenten und Simulierte Realität
Campus, Geb. D 3 2, Raum 0.77
66123 Saarbrücken, Germany
Phone: +49 681 85775-3833
Phone: +49 681 302-3833
Fax: +49 681 85775–2235
kristian.sons at dfki.de
http://www.xml3d.org
Geschäftsführung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster (Vorsitzender)
Dr. Walter Olthoff
Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
Amtsgericht Kaiserslautern, HRB 2313
_______________________________________________________________________________
More information about the x3d-public
mailing list