[x3d-public] Minutes of the X3D V4.0 Open Meeting on X3D / DOM Integration 9th November 2016

Roy Walmsley roy.walmsley at ntlworld.com
Tue Nov 15 07:29:40 PST 2016

Minutes of the X3D V4.0 Open Meeting on X3D / DOM Integration held 0800 PST,
1600 GMT 9th November 2016.


Attendees: Roy Walmsley, Leonard Daly, Joe Williams, Vince Marchetti, Mike
McCann, Anita Havele, Don Brutzman, Dick Puk, Justin Ryan


Apologies: Andreas Plesch






The co-chair welcomed all attendees. Since all attendees were known to each
other, introductions were not carried out.




Opening remarks by the co-chair


The goal is to develop a standard, or series of standards, for X3D that
includes the integration of X3D into HTML web pages. So I ask:


To achieve that goal what topics do you think are important? 

For example, in order to integrate with the DOM/HTML event model what topics
do we need to cover?

Do we need DOM/HTML element interface definitions, and what form should
these take? Should these be of a similar nature to those in SVG 2
(https://www.w3.org/TR/SVG2/) or XML3D

What part should CSS play?

Do we need any additional nodes that might cover VR/AR/MAR/ or specific
platform usage such as mobile?


There are other issues I was not intending to cover today, such as
Prototypes and Scripts, DEF/USE vs id/idref, capitalization.




Discussion by all


Mike McCann explained that he uses X3DOM and JQuery. The X3DOM
implementation of event handling and ROUTES, allows for mixed event
handling, i.e. handling both X3D and HTML events. He uses a namespacing
scheme for Inlines, but only use a single inline level, not nested Inlines.


For scripting and routes  a mixed model works. The question of what are the
boundary lines between working and not working was raised? X3DOM does not
have X3D Scripts.


The usage of the HTML5 slider, a new input element, was discussed. However,
Vince noted that his example related incorporating volume rendering is not
dynamically updating, requiring some other action to stimulate an update. An
example of an HTML tutorial has the same problem. However, Mike has an
instance that works OK. It was pointed out that this requires the usage of
an OnInput event to have dynamic updating. However, since this may not be
fully supported it may be necessary to include OnChange as well.


It was noted that an event cascade in X3D is completed before a redraw. In
contrast, HTML can render within an event cascade. 


Leonard noted that in VR it is important to render at a high frame rate,
currently 90 frames / second. That is only 11 milliseconds between
rendering. The classic X3D event model, therefore, might also be a problem
in non-Web applications for VR, because of timing limitations.


With respect to namespaces it was noted that X3D has multiple, and both XML
and  XHTML have them. HTML5, although not having them, may have some
additional semantics for this.


Roy asked the question: To support event models what do we need to specify
with respect to the DOM? Don reminded everyone that Andreas Plesch had
offered an extended version of the conceptual execution model diagram
(Figure 4.3 in 19775-1, see
tml#f-ConceptualExecutionModel). The revised diagram is attached.


The question of whether the DOM is an API was raised? The abstract within
the DOM4 specification says "DOM defines a platform-neutral model for events
and node trees." However, clause 4.1 states that "In its original sense,
'The DOM' is an API for accessing and manipulating documents (in particular,
HTML and XML documents)." Don noted that HTML5 proceeded because it was
recognized that the DOM was at the heart of everything. 


Questions were asked about SVG. What does SVG do with respect to events? Do
they have an event diagram? Roy noted that the latest W3C Candidate
Recommendation for SVG2 has clause 15 dedicated to Scripting and
interactivity (https://www.w3.org/TR/SVG2/interact.html).


The loading of an inlined X3D file within an HTML file was covered. It was
asked whether the elements available for inspection within the DOM tree. Roy
noted that they are, unless they are within an Inline node, when they may
not be. How do we define X3D element interfaces for appearance in the DOM? 


Leonard reported that for an X3DOM scene containing an Inline if the
namespacename attribute is specified, nodes within the Inline are added to
the DOM. If not, nodes are not in the DOM, and are handled in parallel. The
application knows, however, that they are not in the DOM.


It was commented that the X3D scene graph is an directed acyclic graph
(DAG). Traversal creates a tree. Can it be a separate activity within the
browser, so we do not have to rely on DOM specifications? 




Other news


John Carlson is developing a python binding for X3D.


Don reported an Incremental improvement in the Java binding, including
Classic VRML and VRML exports.


Don reported that the H-Anim working group meeting had a good conversation
about facial animation. They are considering three different levels of
expression (LOE), including coordinate interpolators, although these
interpolators could be replaced by Displacers. The next step is to integrate
the face with the skeleton, also including joints for skullbase, eyes, etc.
Leonard added that industry mostly uses morphing, not joint animation.
Animation export is primarily via FBX. 


Don put forward a possible improvement. For example, when animating a
Background node, a user may want to animate all the colours in the
groundColor or skyColor fields. These are MFColor fields, and there is no
straightforward interpolator node for this.




The meeting closed with thanks from the co-chair for the time and
contributions of all attendees.


Roy Walmsley

X3D WG co-chair


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20161115/bed28a39/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Revised conceptual execution model diagram.png
Type: image/png
Size: 84953 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20161115/bed28a39/attachment-0001.png>

More information about the x3d-public mailing list