<div dir="auto">@Michalis: can you confirm if you export  a glTF file from Blender, import the same glTF in a new Blender instance, export the scene to a second glTF file, that the 2 glTF files will be the same in form and function?   This is important for importing any glTF into another tool besides Blender—workflows.</div><div dir="auto"><br></div><div dir="auto">Again, I lack experience.</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Sep 29, 2022 at 7:20 PM Michalis Kamburelis <<a href="mailto:michalis.kambi@gmail.com">michalis.kambi@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div>@John: glTF doesn't do any "lossy compression".</div><br><div>    Don't read too deep into the saying "glTF is like JPG for 3D". The point of this is that "glTF wants to be a popular format for 3D interchange". It is not "storing as glTF means any lossy compression".</div><br><div>    ( Of course you could use glTF with DRACO, and DRACO can be lossy (depending on settings). But using DRACO is just an optional extension in glTF, not required, not even specified  in glTF core. )</div><br><div>@Don: I'm fine with your refinement ""Full X3D4 rendering support for glTF2 models includes both inline loading and native representations.", thank you!</div><br><div>Though, just to point some details:</div><br><div>2.1. We talked in the past about why tangent information is useful in 3D file and "Normal" is not enough. There's a good reason why glTF has this information and I think X3D should have it too.</div><br><div>See "[x3d-public] Allowing Normal node to accompany PointSet, then achieving well-defined rendering" thread, my post from 2019-12-12.</div><br><div>In short, there are various algorithms to calculate tangent information from normals (and tex coords). They differ in some details and a practical application may also differ in precision. And when your renderer (that renders normalmap) and your 3D authoring tool (that creates the normalmap) use a bit different tangents, with a bit different outcomes -- then artifacts happen when you apply the normal map. The screenshot in answer on <a href="https://gamedev.stackexchange.com/questions/146855/how-do-you-compute-the-tangent-space-vectors-with-normals-given-in-the-mesh#comment259182_146855" target="_blank">https://gamedev.stackexchange.com/questions/146855/how-do-you-compute-the-tangent-space-vectors-with-normals-given-in-the-mesh#comment259182_146855</a> shows this nicely -- <a href="https://i.stack.imgur.com/FwKPO.png" target="_blank">https://i.stack.imgur.com/FwKPO.png</a> .</div><br><div>2.2. Interpolators are not an answer to the issue I mentioned there. The thing is that our X3DColorNode does "replace" of the color. Equivalent glTF concept does "modulate". I propose an extension to enable both modes: <a href="https://castle-engine.io/x3d_implementation_rendering_extensions.php#section_ext_color_mode" target="_blank">https://castle-engine.io/x3d_implementation_rendering_extensions.php#section_ext_color_mode</a> .</div><br><div>I do not see how interpolators could help here. They allow to animate stuff. They don't change that per-pertex X3DColorNode (animated or not animated) does "replace".</div><br><div>Regards,</div><div>Michalis</div><div>On wrz 29 2022, at 11:44 pm, Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>> wrote:</div><blockquote><div><div class="MsoNormal">The relationship between a tangent and a normal is… orthogonal, literally.</div><br><div class="MsoNormal"> </div><br><ul><li><div><font style="font-size:11pt;color:rgb(0,0,0)"><font style="font-family:Calibri,sans-serif;color:rgb(0,0,0)">Wikipedia: Tangent</font></font></div></li><li><div><font style="font-size:11pt;color:rgb(0,0,0)"><font style="font-family:Calibri,sans-serif;color:rgb(0,0,0)"><a href="https://en.wikipedia.org/wiki/Tangent" target="_blank" style="font-family:Calibri,sans-serif">https://en.wikipedia.org/wiki/Tangent</a></font></font></div></li></ul><div><font style="font-size:11pt;color:rgb(0,0,0)"><font style="font-family:Calibri,sans-serif;color:rgb(0,0,0)"> </font></font></div><br><ul><li><div><font style="font-size:11pt;color:rgb(0,0,0)"><font style="font-family:Calibri,sans-serif;color:rgb(0,0,0)">Wikipedia: Normal (geometry)</font></font></div></li><li><div><font style="font-size:11pt;color:rgb(0,0,0)"><font style="font-family:Calibri,sans-serif;color:rgb(0,0,0)"><a href="https://en.wikipedia.org/wiki/Normal_(geometry)" target="_blank" style="font-family:Calibri,sans-serif">https://en.wikipedia.org/wiki/Normal_(geometry)</a></font></font></div></li></ul><div class="MsoNormal"> </div><br><div class="MsoNormal">Given a surface, you can convert a normal to a tangent (and vice versa).</div><br><div class="MsoNormal"> </div><br><div class="MsoNormal">Regarding DOM, it is Document Object Model used to create a tree of element/attribute/value strings  corresponding to an HTML page.  Suggest reading the respective specifications, or summaries, in order to understand how it is a quite different from glTF.</div><br><div><div class="MsoNormal"><font style="font-size:10pt;color:rgb(0,0,0)"><font style="font-family:"Courier New";color:rgb(0,0,0)"> </font></font></div><br><div class="MsoNormal"><font style="font-size:10pt;color:rgb(0,0,0)"><font style="font-family:"Courier New";color:rgb(0,0,0)">all the best, Don</font></font></div><br><div class="MsoNormal"><font style="font-size:10pt;color:rgb(0,0,0)"><font style="font-family:"Courier New";color:rgb(0,0,0)">--</font></font></div><br><div class="MsoNormal"><font style="font-size:10pt;color:rgb(0,0,0)"><font style="font-family:"Courier New";color:rgb(0,0,0)">Don Brutzman  Naval Postgraduate School, Code USW/Br        <a href="mailto:brutzman@nps.edu" target="_blank" style="font-family:"Courier New"">brutzman@nps.edu</a></font></font></div><br><div class="MsoNormal"><font style="font-size:10pt;color:rgb(0,0,0)"><font style="font-family:"Courier New";color:rgb(0,0,0)">Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149</font></font></div><br><div class="MsoNormal"><font style="font-size:10pt;color:rgb(0,0,0)"><font style="font-family:"Courier New";color:rgb(0,0,0)">X3D graphics, virtual worlds, Navy robotics https://</font></font> <font style="font-size:10pt;color:rgb(0,0,0)"><font style="font-family:"Courier New";color:rgb(0,0,0)"><a href="http://faculty.nps.edu/brutzman" target="_blank" style="font-family:"Courier New"">faculty.nps.edu/brutzman</a></font></font></div></div><div class="MsoNormal"> </div><br><div><div><div class="MsoNormal"><div><strong>From:</strong> John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>></div><div><strong>Sent:</strong> Thursday, September 29, 2022 12:05 PM</div><div><strong>To:</strong> Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>></div><div><strong>Cc:</strong> Michalis Kamburelis <<a href="mailto:michalis.kambi@gmail.com" target="_blank">michalis.kambi@gmail.com</a>>; X3D Public Mailing List (<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>) <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>></div><div><strong>Subject:</strong> Re: [x3d-public] X3D Working Group meeting 23 SEP 2022: Mantis issues review, SvgTexture</div></div></div></div><div><div><div><div><div class="MsoNormal"><font style="font-size:10pt;color:rgb(0,0,0)"> </font></div><br><div class="MsoNormal">On Thu, Sep 29, 2022 at 12:42 PM Brutzman, Donald (Don) wrote</div></div><blockquote><div class="MsoNormal"><br><div>2.1.  Tangent vectors are normal to a surface.  X3D has a Normal node, so an</div><div>advanced authoring can likely match such functionality.</div></div></blockquote><div><div class="MsoNormal"> </div></div><div><div class="MsoNormal">I don’t understand the first sentence.   Information is only needed if the first sentence is correct.</div></div><div><div class="MsoNormal"> </div></div><div><div class="MsoNormal">I will try to me tomorrow or when the next meeting is.   The real purpose is to inquire into next meeting.</div></div><div><div class="MsoNormal"> </div></div><div><div class="MsoNormal">If someone is preparing a glTF to DOM converter, can I participate?</div></div><div><div class="MsoNormal"> </div></div><div><div class="MsoNormal">John</div></div></div></div></div></div></blockquote></blockquote></div></div>