<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Last week there was a bit of
      conversation on the 3D WG list about requirements. I am sending my
      contribution on the topic of X3D V4 requirements to the public
      list to get increased conversation. Note that this is NOT the
      product of the WG and I am not claiming that these are final. This
      is only a personal early draft of requirements for X3D running in
      a web browser environment. Please feel free to discuss or propose
      additions/changes to this list.<br>
      <br>
    </div>
    <br>
    <b>Requirements</b> <br>
    Boundary conditions: This is just for X3D running in a web browser
    and integrated with HTML. If there is X3D outside of this
    limitation, these requirements may or may not apply.<br>
    <br>
    Note: Some of these requirements may overlap by varying amounts. It
    was easier to specify them this way then trying to make a complete
    and non-overlapping set. I'm not going to even claim that this is a
    complete set, but it is a beginning. <br>
    <br>
    For those that want XHTML, then convert all references to HTML to
    XHTML and make the appropriate syntax changes. The differences
    between HTML and XHTML in the appearance of the elements and
    attributes is that XHTML is strict. This amounts to closing
    elements, elements and attributes are lower case, mandatory elements
    and attributes, different MIME type (text/html vs. application/xml
    or applications/xhtml+xml), and quoted attributes -- see <a
      class="moz-txt-link-freetext"
      href="https://www.w3schools.com/html/html_xhtml.asp">https://www.w3schools.com/html/html_xhtml.asp</a>
    for details. The WhatWG has a pretty good documentation page on the
    differences at <a class="moz-txt-link-freetext"
      href="https://wiki.whatwg.org/wiki/HTML_vs._XHTML">https://wiki.whatwg.org/wiki/HTML_vs._XHTML</a>.<br>
    <br>
    <br>
    1) Look "like" HTML (5). <br>
      a) Elements (nodes in X3D-speak) shall be case independent<br>
      b) Attributes (fields in X3D-speak) shall be case independent<br>
      c) X3D nodes shall not have name conflicts with any HTML-defined
    elements<br>
      d) All X3D nodes shall support all HTML Global Attributes (<a
      class="moz-txt-link-freetext"
      href="https://www.w3schools.com/tags/ref_standardattributes.asp">https://www.w3schools.com/tags/ref_standardattributes.asp</a>)<br>
      e) All X3D fields with the same name as HTML attributes shall
    behave as the HTML element<br>
      f) TBD: Not all style attributes apply to X3D nodes & fields<br>
    <br>
    2) Function "like" HTML (5).<br>
      a) All nodes shall be fully integrated with the DOM [This may need
    to change if certain nodes need to remain hidden from the DOM. For
    example, the manner which X3DOM implements Inline.]<br>
      b) The scene graph does not need to be DOM (or a portion of it).<br>
      c) Changes to the DOM shall be reflected in the scene graph<br>
      d) Changes to the scene graph shall be reflected in the DOM<br>
      e) Events are handled as HTML events<br>
      f) DOM is the external (i.e., from the web page) API to the scene
    graph<br>
    <br>
    3) X3D shall support the evolving web standards for flat-3D (WebGL),
    VR (WebVR) and AR (nothing yet).<br>
    <br>
    4) Existing features & functionality<br>
      a) Perform the following tasks with the requirements that is be
    conflict with the above<br>
        i) Conduct a review of all existing features (nodes) to
    determine if any should be deprecated in V4<br>
        ii) Conduct a review of all existing functionality (run-time) to
    determine if any should be deprecated or changed in V4<br>
      b) Include all features and functionality that passes the above
    reviews<br>
    <br>
    5) Additional features shall be added<br>
      a) Deformable-skin joint based animation<br>
      b) Support for multiple geometry formats, including OBJ, glTF<br>
      c) Increased Material support with a standard library of
    pre-defined shaders<br>
      d) Mechanism to navigate a scene without a pointing device<br>
      e) Mechanism to touch or select objects without a pointing device<br>
      f) Review other 3D/VR display technologies (XML3D, A-Frame, GLAM,
    etc.) to determine if there are features that should be included<br>
    <br>
    <br>
    <div class="moz-signature">-- <br>
      <font class="tahoma,arial,helvetica san serif" color="#333366"> <font
          size="+1"><b>Leonard Daly</b></font><br>
        3D Systems & Cloud Consultant<br>
        LA ACM SIGGRAPH Chair<br>
        President, Daly Realism - <i>Creating the Future</i> </font></div>
  </body>
</html>