<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
(corrected/completed version)</div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<br>
</div>
<div id="divRplyFwdMsg" dir="ltr"></div>
<div style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Hi Holger - great to hear of your interest and efforts, thank you.</div>
<div style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<br>
Am thinking the default upVector ought to point in the "up" direction expected by users.</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="direction: ltr; list-style-type: disc;">
<li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div style="direction: ltr;">Wikipedia: Principle of least astonishment</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div style="direction: ltr;">https://en.wikipedia.org/wiki/Principle_of_least_astonishment</div>
</li></ul>
<div class="elementToProof" style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
The following Web3D member-only resources for X3D 4.1 have been updated to track this issue.</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="direction: ltr; list-style-type: disc;">
<li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div style="direction: ltr;">Mantis 1481: upVector field for TextureProjector, TextureProjectorParallel nodes</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div style="direction: ltr;">https://mantis.web3d.org/view.php?id=1481</div>
<div style="direction: ltr;"><br>
</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div style="direction: ltr;">Github version control</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div class="elementToProof" style="direction: ltr;">https://github.com/Web3DConsortium/X3D/blob/master/ISO-IEC19775/ISO-IEC19775-1/ISO-IEC19775-1v4.1/ISO-IEC19775-1v4.1-CD/Part01/components/textureProjection.html</div>
</li></ul>
<div class="elementToProof" style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Also happy to announce that committee-draft X3D 4.1 (with initial component revisions) is visible online for best encouragement of interoperable adoption by implementers.</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="direction: ltr; list-style-type: disc;">
<li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div class="elementToProof" style="direction: ltr;">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4.1-CD</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div class="elementToProof" style="direction: ltr;">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4.1-CD/Part01/components/textureProjection.html</div>
</li></ul>
<div class="elementToProof" style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Further improvements always welcome.  Dick and I will carefully review these changes in our next X3D specification editors meeting.</div>
<div class="elementToProof" style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<br>
</div>
<div class="elementToProof" style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Follow-on work to update validation tools and demonstration examples will continue once consensus is confirmed on the precise node syntax and semantics for TextureProjector and TextureProjectorParallel.</div>
<div class="elementToProof" style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<br>
Web3D Consortium membership certainly has value.  Am proud to recommend membership to everyone who wants to support 3D graphics on the Web.</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="direction: ltr; list-style-type: disc;">
<li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div class="elementToProof" style="direction: ltr;">Join the Web3D Consortium</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div class="elementToProof" style="direction: ltr;">https://www.web3d.org/membership/join</div>
</li></ul>
<div class="elementToProof" style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Have fun with X3D!  ðŸ™‚</div>
<div class="x_elementToProof" id="x_Signature">
<p style="margin: 0in; font-family: Calibri, sans-serif; font-size: 11pt;"><span style="font-family: "Courier New"; font-size: 9pt;"><br>
</span></p>
<p style="margin: 0in; font-family: Calibri, sans-serif; font-size: 11pt;"><span style="font-family: "Courier New"; font-size: 9pt;">all the best, Don</span></p>
<p class="elementToProof" style="margin: 0in; font-family: Calibri, sans-serif; font-size: 11pt;">
<span style="font-family: "Courier New"; font-size: 9pt;">--</span></p>
<p style="margin: 0in; font-family: Calibri, sans-serif; font-size: 11pt;"><span style="font-family: "Courier New"; font-size: 9pt;">Don Brutzman  Naval Postgraduate School, Code USW/Br        brutzman@nps.edu</span></p>
<p style="margin: 0in; font-family: Calibri, sans-serif; font-size: 11pt;"><span style="font-family: "Courier New"; font-size: 9pt;">Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149</span></p>
<p style="margin: 0in; font-family: Calibri, sans-serif; font-size: 11pt;"><span style="font-family: "Courier New"; font-size: 9pt;">X3D graphics, virtual worlds, navy robotics https://faculty.nps.edu/brutzman</span></p>
<p style="margin: 0in; font-family: Calibri, sans-serif; font-size: 11pt;"><span style="font-family: "Courier New"; font-size: 9pt;"> </span></p>
</div>
<div id="x_appendonsend"></div>
<div style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<br>
</div>
<hr style="direction: ltr; display: inline-block; width: 98%;">
<div id="x_divRplyFwdMsg" dir="ltr"><span style="font-family: Calibri, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);"><b>From:</b> Holger Seelig <holger.seelig@yahoo.de><br>
<b>Sent:</b> Sunday, December 8, 2024 1:12 AM<br>
<b>To:</b> X3D <x3d-public@web3d.org><br>
<b>Cc:</b> Brutzman, Donald (Don) (CIV) <brutzman@nps.edu>; khyoo@chungbuk.ac.kr <khyoo@chungbuk.ac.kr>; Myeong Won Lee <myeongwonlee@gmail.com><br>
<b>Subject:</b> Re: [x3d-public] X3D 4.0 specification problem: upVector field for TextureProjector, TextureProjectorParallel</span></div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;">That is very good news. I will update X_ITE accordingly.</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;">Maybe now is also the time to change the *direction* vector to (-1 -1 -1) on the example page
<a href="https://www.web3d.org/x3d/content/examples/Basic/X3dSpecifications/TextureProjectorComponentExampleIndex.html" id="OWAb2cc61d8-e192-f8d8-8afc-14df27942504" class="x_OWAAutoLink" data-auth="NotApplicable">
https://www.web3d.org/x3d/content/examples/Basic/X3dSpecifications/TextureProjectorComponentExampleIndex.html</a>, then the projector would point exactly into the corner of the model.</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;">Best regards,</div>
<div style="direction: ltr;">Holger</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; color: rgb(0, 0, 0);">
--</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; color: rgb(0, 0, 0);">
Holger Seelig</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; color: rgb(0, 0, 0);">
Leipzig, Germany</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; color: rgb(0, 0, 0);">
<br>
</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; color: rgb(0, 0, 0);">
holger.seelig@yahoo.de</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; color: rgb(0, 0, 0);">
https://create3000.github.io/x_ite/</div>
<div style="direction: ltr;"><br>
</div>
<blockquote>
<div style="direction: ltr;">Am 08.12.2024 um 05:21 schrieb Brutzman, Donald (Don) (CIV) via x3d-public <x3d-public@web3d.org>:</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
While performing regression testing using X3D Examples Archive, found several problems related to the upVector field.</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<br>
</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
First, upVector is defined in X3D Architecture specification for TextureProjector node but not TextureProjectorParallel node.  However the corresponding figures illustrate that upVector is an integral part of each node's definition.</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<br>
</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
Second, the default value is "0 0 1" but this looks wrong (rotated confusingly), and a much-more intuitive value is "0 1 0" with y-axis up.  In other words, the default upVector direction ought to point upwards.  This is the default relationship is shown in
 both figures and the specification example for TextureProjector.</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="direction: ltr; text-align: left; list-style-type: disc;">
<li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">X3D 4.0 Architecture, clause 42 Texture projection component</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;"><a href="https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/textureProjection.html" id="OWA6051ade1-1d0d-e70f-1b1a-649f3085d18d" class="x_OWAAutoLink" data-auth="NotApplicable">https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/textureProjection.html</a></div>
<div style="direction: ltr;"><br>
</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">42.3.1 X3DTextureProjectorNode</div>
<div style="direction: ltr;"><br>
</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">42.4.1 TextureProjector</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">Figure 42.5 â€” Description of 3D perspective texture projection</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">"The <i>upVector</i> describes the roll of the camera by saying which point is "up" in the camera's orientation. The default value of this field is (0 0 1)."</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;"><a href="https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/textureProjection.html#TextureProjector" id="OWAa7f1596e-6295-d85b-20a9-329c1ec5ec83" class="x_OWAAutoLink" data-auth="NotApplicable">https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/textureProjection.html#TextureProjector</a></div>
<div style="direction: ltr;"><br>
</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">42.4.2 TextureProjectorParallel</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">Figure 42.4 â€”Description of 3D parallel texture projection</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;"><a href="https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/textureProjection.html#TextureProjectorParallel" id="OWAa11f43a2-3d85-c2ab-4fdd-61d7ae07464b" class="x_OWAAutoLink" data-auth="NotApplicable">https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/textureProjection.html#TextureProjectorParallel</a></div>
</li></ul>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
Third, I am unable to find a working implementation for these nodes, though we have seen FreeWrl (at least) working in the past.</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<br>
</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
Recommended specification remedies:</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="direction: ltr; text-align: left; list-style-type: disc;">
<li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">Include upVector field in TextureProjectorParallel node and shared node type X3DTextureProjectorNode</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">Change default values to "0 1 0"</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">Include an example for TextureProjectorParallel node, similar to TextureProjector node</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">Fix erroneous figure labels so that they are properly numbered</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">Update Mantis error tracker, various validation tools, X3D Tooltips, X3DJSAIL and X3DPSAIL x3d.py, etc.</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">Encourage, hopefully ensure that multiple browser implementations are available.</div>
</li></ul>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
Test scene:</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="direction: ltr; text-align: left; list-style-type: disc;">
<li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;">X3D Example Archives: Basic, X3D Specifications, Texture Projector Component Example</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
<div style="direction: ltr;"><a href="https://www.web3d.org/x3d/content/examples/Basic/X3dSpecifications/TextureProjectorComponentExampleIndex.html" id="OWA2115c0d6-72fa-460a-da6b-e406b6f93d57" class="x_OWAAutoLink" data-auth="NotApplicable">https://www.web3d.org/x3d/content/examples/Basic/X3dSpecifications/TextureProjectorComponentExampleIndex.html</a></div>
</li></ul>
<div style="direction: ltr; text-align: left; text-indent: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt;">
Thanks in advance for all feedback on these corrections, plus any implementation reports.</div>
<div id="x_x_x_Signature" class="x_x_x_elementToProof" style="font-family:Helvetica;font-size:12px;text-decoration:none">
<div style="margin: 0in; font-family: "Courier New"; font-size: 9pt;"><br>
</div>
<div style="margin: 0in; font-family: "Courier New"; font-size: 9pt;">all the best, Don</div>
<div style="margin: 0in; font-family: "Courier New"; font-size: 9pt;">--</div>
<div style="margin: 0in; font-family: "Courier New"; font-size: 9pt;">Don Brutzman  Naval Postgraduate School, Code USW/Br        <a href="mailto:brutzman@nps.edu" id="OWA01089a8c-277c-8e70-0178-b5e5f498ba7e" class="x_OWAAutoLink">brutzman@nps.edu</a></div>
<div style="margin: 0in; font-family: "Courier New"; font-size: 9pt;">Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149</div>
<div style="margin: 0in; font-family: "Courier New"; font-size: 9pt;">X3D graphics, virtual worlds, navy robotics
<a href="https://faculty.nps.edu/brutzman" id="OWA70eec17d-114e-5b07-78dc-5e8c0385438a" class="x_OWAAutoLink" data-auth="NotApplicable">
https://faculty.nps.edu/brutzman</a></div>
<p style="margin: 0in; font-family: Calibri, sans-serif; font-size: 11pt;"><span style="font-family: "Courier New"; font-size: 9pt;"> </span></p>
</div>
<div style="direction: ltr;"><span style="font-family: Helvetica; font-size: 12px;">_______________________________________________</span><br>
<span style="font-family: Helvetica; font-size: 12px;">x3d-public mailing list</span><br>
<span style="font-family: Helvetica; font-size: 12px;"><a href="mailto:x3d-public@web3d.org" id="OWA11d5e8b4-3b40-c8ea-54da-01d152366d86" class="x_OWAAutoLink" style="text-align: left;">x3d-public@web3d.org</a></span><br>
<span style="font-family: Helvetica; font-size: 12px;"><a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" id="OWA02b108a8-097a-f5d8-cba1-2fca1324caea" class="x_OWAAutoLink" data-auth="NotApplicable" style="text-align: left;">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a></span></div>
</blockquote>
<div style="direction: ltr;"><br>
</div>
</body>
</html>