<div style="color:rgb(0,0,0);font-family:arial,sans-serif;font-size:12pt"><p style="margin: 0.1rem 0; line-height: 1.0;">> <span style="color: #000000; font-family: Aptos, sans-serif; font-size: 14.6667px; text-align: left; white-space: normal; float: none; display: inline;">using the newly-renamed Castle Model Viewer.</span> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;">How about some publicity? Some sort of announcement?</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Joe</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
</div>
<div class="elnk-inline-message-container" style="border-left: 1px solid #aaa; box-sizing: border-box; padding: 10px 0 10px 15px; margin: 0;">
<p>-----Original Message-----<br>From: Brutzman, Donald (Don) (CIV) <brutzman@nps.edu><br>Sent: May 17, 2024 6:41 AM<br>To: X3D Public Mailing List (x3d-public@web3d.org) <x3d-public@web3d.org><br>Cc: x3d@web3d.org <x3d@web3d.org><br>Subject: [x3d] X3D Standards review: clearer support for glTF, Inline glTF demonstrated, Web3D Recommended Practices discussion</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<!-- [if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!-- [if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal">X3D Standards Review meeting</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Participants: Nicholas Polys, Dick Puk, Vince Marchetti, Anita Havele, Don Brutzman</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">[apologies for late posting of minutes, some time was needed for executing followups.]</p>
<div>
<p class="MsoNormal"><span style="font-size: 9.0pt; font-family: 'Courier New'; mso-ligatures: none;"> </span></p>
</div>
<ol style="margin-top: 0in;" start="1" type="1">
<li class="MsoListParagraph" style="margin-left: -.25in; mso-list: l3 level1 lfo6;">We discussed future change considerations for X3D and how to better support glTF</li>
</ol>
<p class="MsoNormal"> </p>
<ol style="margin-top: 0in;" start="1" type="a">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l2 level1 lfo7;">Fix glTF examples by adding component statements, 3 are actually needed if not using X3D version=’4.0’ profile=’Full’</li>
</ol>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Corrections applied and deployed. Also added new model to test glTF capability using Inline node.</p>
<p class="MsoNormal"> </p>
<ul style="margin-top: 0in;" type="disc">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l4 level1 lfo8;">X3D Example Archives: X3D4AM, X3D for Advanced Modeling, Gltf Sample Models</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l4 level1 lfo8;">https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/GltfSampleModels</li>
</ul>
<p class="MsoNormal"> </p>
<ul style="margin-top: 0in;" type="disc">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l4 level1 lfo8;">X3D Example Archives: X3D4AM, X3D for Advanced Modeling, Gltf Sample Models, Alpha Blend Mode Test Inline</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l4 level1 lfo8;">https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/GltfSampleModels/AlphaBlendModeTestInlineIndex.html</li>
</ul>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Of happy note is that X_ITE and X3DOM both appear to render well (and full ZOOM rocks!)</p>
<p class="MsoNormal"> </p>
<ul style="margin-top: 0in;" type="disc">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l4 level1 lfo8;">https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/GltfSampleModels/AlphaBlendModeTestInlineX_ITE.html</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l4 level1 lfo8;">https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/GltfSampleModels/AlphaBlendModeTestInlineX3dom.xhtml</li>
</ul>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Castle view3dscene worked well for me too, so forthcoming castle-model-viewer should be fine also. All three renderings were super high quality and apparently identical. Evidence:</p>
<p class="MsoNormal"> </p>
<ul style="margin-top: 0in;" type="disc">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l4 level1 lfo8;">https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/GltfSampleModels/AlphaBlendModeTestInlineX3dom.png</li>
</ul>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Ladies and gentlemen, we have a demonstrated capability of X3D Inline of glTF models! <span style="font-family: 'Segoe UI Emoji',sans-serif;">😊</span></p>
<p class="MsoNormal"> </p>
<ol style="margin-top: 0in;" start="2" type="a">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l2 level1 lfo7;">Do we need to consider a new profile? This adds much attendant overhead for implementers, and baggage for tools to keep track of, but might result in simplicity if use cases for a given community are well defined enough to show that the profile indeed adds value.</li>
</ol>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Always a perennial topic of interest, always a high hurdle to show that sufficient benefit results from a major change. Good discussion occurred, leading to the following.</p>
<p class="MsoNormal"> </p>
<ol style="margin-top: 0in;" start="3" type="a">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l2 level1 lfo7;">Add glTF to Interactive and Interchange profile? Interesting that our prior motivations of not breaking browser support (e.g. “no changes to Interchange”) might be balanced with making X3D inclusion of glTF more appealing to new adopters.</li>
</ol>
<p class="MsoNormal"> </p>
<p class="MsoNormal">This seems like a promising avenue to pursue further. Integrating glTF more fully into X3D infrastructure holds much promise. Minor changes to X3D Architecture would be needed but likely provide big payoff. This would first be an X3D Recommended Practice, eventually leading to X3D amendment at ISO.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Next discussion: what exactly is Web3D strategy regarding deployment, testing and adoption of new capabilities?</p>
<p class="MsoNormal"> </p>
<ol style="margin-top: 0in;" start="4" type="a">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l2 level1 lfo7;">Encouraging browser permissiveness, i.e. rendering what they can while not blocking for what they can’t</li>
</ol>
<ol style="margin-top: 0in;" start="1" type="a">
<ul style="margin-top: 0in;" type="disc">
<li class="MsoListParagraph" style="margin-left: -.5in; mso-list: l0 level2 lfo9;">if profile=Full then do not report “capability not supported” unless there x3d nodes in the file are indeed not supported</li>
<li class="MsoListParagraph" style="margin-left: -.5in; mso-list: l0 level2 lfo9;">if profile is less that actual content, but browser supports it, then render with no more than a warning (i.e. don’t be overly strict)</li>
<li class="MsoListParagraph" style="margin-left: -.5in; mso-list: l0 level2 lfo9;">Note that unsupported capabilities won’t render correctly, causing frustration… decision on when to issue warnings and when to fail is left up to browsers, since X3D does not impose requirements (potential performance burdens) on error handling.</li>
</ul>
</ol>
<p class="MsoNormal"> </p>
<ol style="margin-top: 0in;" start="5" type="a">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l2 level1 lfo7;">Full profile always includes everything… meaning an author producing a model only has to be correct and valid X3D without having to worry about getting profile and component statements sliced and diced correctly. A permissive approach by browsers to permit content (even if only partially supported at the moment) encourages authors to use profile=Full regardless of other concerns, supporting long-term workability of models independent of evolution of browser capabilities over time.</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l2 level1 lfo7;">Do we need someone to look at MPEG4 again, is anything happening over there that we should consider?</li>
</ol>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Group assessment: current X3D profile and component architecture design is flexible, descriptive, concise, and sound overall. No fundamental changes needed at all.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Near-term options:</p>
<ul style="margin-top: 0in;" type="disc">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">Encourage correct profile/component combinations are provided in X3D model content</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">Our recommended practices and examples should be much clearer about how authors can use glTF in X3D</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">Consider additional profiles? None yet specifically proposed… so not now.</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">Push glTF into other profiles, e.g. Interchange, Interactive, Immersive, Medical, CADInterchange? Hmmm…</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">Similarly consider upgrading some of the components (e.g. Geospatial) by revising component prerequisites corresponding to glTF.</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">Must be careful about modifying past components since that might cause backwards incompatibility.</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">What do implementers think?</li>
</ul>
<p class="MsoNormal"> </p>
<ol style="margin-top: 0in;" start="2" type="1">
<li class="MsoListParagraph" style="margin-left: -.25in; mso-list: l3 level1 lfo6;">TODO for future meeting: lay down X3D Recommended Practices page.</li>
</ol>
<p class="MsoNormal"> </p>
<ol style="margin-top: 0in;" start="3" type="1">
<li class="MsoListParagraph" style="margin-left: -.25in; mso-list: l3 level1 lfo6;">Other activity:</li>
</ol>
<p class="MsoListParagraph"> </p>
<ol style="margin-top: 0in;" start="1" type="a">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l6 level1 lfo10;">Good progress resuming unit testing of X3D Examples conversion from XML (.x3d) to produce Classic VRML (.x3dv) and VRML97 (.wrl) using the newly-renamed Castle Model Viewer. Ongoing progress results maintained in sourceforge version control and visible at</li>
</ol>
<p class="MsoListParagraph"> </p>
<ul style="margin-top: 0in;" type="disc">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">https://www.web3d.org/x3d/content/examples/build.x3dv.all.log.txt</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">https://www.web3d.org/x3d/content/examples/build.vrml97.all.log.txt</li>
</ul>
<p class="MsoNormal"> </p>
<ol style="margin-top: 0in;" start="2" type="a">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l6 level1 lfo10;">We are preparing a quarterly update release of X3D-Edit.</li>
</ol>
<p class="MsoNormal"> </p>
<ol style="margin-top: 0in;" start="3" type="a">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l6 level1 lfo10;">Dick and I continue updating two draft ISO specifications, with all improvements scrupulously documented in Web3D Issue Tracker. Specification comments always welcome.</li>
</ol>
<p class="MsoNormal"> </p>
<ul style="margin-top: 0in;" type="disc">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">X3D XML Encoding</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19776-1v4.0-WD1/Part01/X3D_XML.html</li>
</ul>
<p class="MsoNormal"> </p>
<ul style="margin-top: 0in;" type="disc">
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">X3D Classic VRML Encoding</li>
<li class="MsoListParagraph" style="margin-left: 0in; mso-list: l7 level1 lfo3;">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19776-2v4.0-WD1/Part02/X3D_ClassicVRML.html</li>
</ul>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Have fun with X3D4! 8)</p>
<p class="MsoNormal"><span style="font-size: 9.0pt; font-family: 'Courier New'; mso-ligatures: none;"> </span></p>
<p class="MsoNormal"><span style="font-size: 9.0pt; font-family: 'Courier New'; mso-ligatures: none;">all the best, Don</span></p>
<p class="MsoNormal"><span style="font-size: 9.0pt; font-family: 'Courier New'; mso-ligatures: none;">-- </span></p>
<p class="MsoNormal"><span style="font-size: 9.0pt; font-family: 'Courier New'; mso-ligatures: none;">Don Brutzman Naval Postgraduate School, Code USW/Br <a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a></span></p>
<p class="MsoNormal"><span style="font-size: 9.0pt; font-family: 'Courier New'; mso-ligatures: none;">Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149</span></p>
<p class="MsoNormal"><span style="font-size: 9.0pt; font-family: 'Courier New'; mso-ligatures: none;">X3D graphics, virtual worlds, navy robotics <a href="https://faculty.nps.edu/brutzman">https://faculty.nps.edu/brutzman</a></span></p>
<p class="MsoNormal"> </p>
</div>
</div>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>