<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);">
[Oops a runaway email. Corrected copy follows.]</div>
<div id="Signature" class="elementToProof"></div>
<div dir="ltr" id="divRplyFwdMsg">
<div> </div>
</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);">
Hi John. Thanks for sharing this impressive model. Incidentally there is no prior version in the examples archive, numerous details follow.</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>
<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);">
First made some adjustments for inclusion in the archive. Then had some major trouble with the model, and then discovered that it was invalid. Started over again. Found and fixed stray apostrophe at end of line 1245.</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;"><Material DEF="MenuBackground_Material" diffuseColor="0 0 1" /><span style="background-color: rgb(255, 255, 0);">'</span></div>
</li></ul>
<div style="direction: ltr; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Then found and fixed similar error on line 1251:</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;"><Script DEF="ScriptToggle"><span style="background-color: rgb(255, 255, 0);">'</span></div>
</li></ul>
<div class="elementToProof" style="direction: ltr; text-align: left; text-indent: 0px; margin: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
At this point the model validates, both with X3D XML DTD and X3D XML Schema. Checked into version control in that form. You can View History there to see a series of changes.</div>
<div style="direction: ltr; text-align: left; text-indent: 0px; margin: 0px; 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="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Then applied X3D canonicalization (C14N) to regularize whitespace and line breaks, making comparison differencing of changes possible.</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>
<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);">
Then made initial adjustments to meta-tag metadata. I think that you and Joe should be listed first as authors since you made changes to the other authors' models, and are the primary authors of this model.</div>
<div class="elementToProof" style="direction: ltr; text-align: left; text-indent: 0px; margin: 0px; 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; text-align: left; text-indent: 0px; margin: 0px; font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
After a bit, began thinking that a more accurate name is FacialAnimationComparisonScripts.x3d with future variations FacialAnimationComparisionDisplacers (and possibly FacialAnimationComparisionInline someday).</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; color: rgb(0, 0, 0);">
<div class="elementToProof" style="direction: ltr; margin: 0px;">https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/HumanoidAnimation/FacialAnimation/FacialAnimationComparisonScripts.x3d</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);">
I'm using X3D-Edit 4.0 to make all of these checks and corrections. We have a new release available on SourceForge, awaiting NetBeans confirmation on their plugin page. If you want to use it, available at</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;">X3D-Edit 4.0 Distribution, 19 December 2024</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://sourceforge.net/projects/x3d/files</div>
<div 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;"><br>
</div>
</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;">Apache NetBeans Plugin Portal: X3D-Edit</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;">(verification pending for NetBeans 24)</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://plugins.netbeans.apache.org/catalogue/?id=90</div>
</li></ul>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
My changes are all committed to SourceForge and pushed to Web3D Example Archives. Lots to see there!</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="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">X3D Example Archives: Humanoid Animation, Facial Animation, Facial Animation Comparison Scripts</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">User selection of X3D models with alternate Facial Animation Control System (FACS) behaviors driven by Java</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">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/FacialAnimation/FacialAnimationComparisonScriptsIndex.html</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">looks like X_ITE is working OK, full-screen version:</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">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/FacialAnimation/FacialAnimationComparisonScriptsX_ITE.html</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">Can experiment with live editing using X_ITE Playground Editor (some fiddling with full-screen buttons may be necessary)</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">https://create3000.github.io/x_ite/playground/?url=https://www.web3d.org/x3d/content/examples/HumanoidAnimation/FacialAnimation/FacialAnimationComparisonScripts.x3d</div>
</li></ul>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Continuing improvements welcome. Suggestions to you and Joe for continuing work:</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="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">Better description please, I don't think that I captured it correctly.</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">If you don't plan future variations, we might further simplify rename to FacialAnimationComparison.x3d</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">Describe design, first an overview/README and then possibly in detail. With diligent effort this might become a paper in Web3D 2025 conference.</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">Fix DEF and name values to better describe each node's purpose and also match HAnim rules. For example you have a many DEF names claiming to be an interpolator, but they are actually displacers. Confusing.</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">X3DOM apparently still does not support Prototypes, Castle Model Viewer does not support JavaScript. Looks like you are only using those for the menus (which is really great progress in X3D modeling). </div>
</li></ul>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Have fun with X3D HAnim! 🙂</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 class="elementToProof" style="font-family: "Courier New"; font-size: 12px; color: rgb(0, 0, 0);">
<img id="image_0" width="333" height="195" size="178688" contenttype="image/png" style="width: 333px; height: 195px; max-width: 515px;" data-outlook-trace="F:1|T:1" src="cid:59795083-f4d5-47f3-bcdb-6f4279e215b8"></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 class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
P.S. A great many issues reported by X3D Schematron.</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 class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
P.P.S. X3D HTML documentation shows many HAnim details plus a routing table, which can significantly assist debugging.</div>
<ul data-editing-info="{"applyListStyleFromLevel":false,"unorderedStyleType":1}" style="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">X3D Model Documentation: FacialAnimationComparisonScripts.x3d</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">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/FacialAnimation/FacialAnimationComparisonScripts.html</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div class="elementToProof"><br>
</div>
</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">Event Graph ROUTE Table shows event connections.</div>
</li><ul data-editing-info="{"applyListStyleFromLevel":true}" style="list-style-type: circle;">
<li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div class="elementToProof">The following ROUTE chain begins an event-routing loop! Loop occurs at nodeDepth=4.</div>
</li><li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div>ROUTE ScriptToggle.diffuseColor TO MenuBackground_Material.diffuseColor </div>
</li></ul>
<li style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div class="elementToProof">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/FacialAnimation/FacialAnimationComparisonScripts.html#EventGraph</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<div class="elementToProof"><br>
</div>
</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">Visualization report for HAnimHumanoid model hanim0_humanoid</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">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/FacialAnimation/FacialAnimationComparisonScripts.html#humanoidHAnimHumanoidReport</div>
</li></ul>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Very respectfully yours.</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 class="elementToProof" style="font-family: "Courier New"; font-size: 9pt; color: rgb(0, 0, 0);">
all the best, Don</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;">--</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> John Carlson <yottzumm@gmail.com><br>
<b>Sent:</b> Thursday, December 19, 2024 11:18 PM<br>
<b>To:</b> X3D Graphics public mailing list <x3d-public@web3d.org>; Brutzman, Donald (Don) (CIV) <brutzman@nps.edu>; doug sanden <highaspirations@hotmail.com>; Joe D Williams <joedwil@earthlink.net>; Holger Seelig <holger.seelig@yahoo.de><br>
<b>Subject:</b> Cleaned MultiFacialAnimationMenu.txt</span>
<div><br>
</div>
</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;"> Don,</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;">Please upgrade the previous example in the archive that I provided for MultiFacialAnimation. I don't see it on the page yet, it's probably waiting for a build.</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;">This one doesn't have useless HAnimDisplacers and corresponding ROUTEs.</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;">Works in Sunrize and not in FreeWRL. Maybe Doug can take a look. I tried two separate JavaScript engines (default and -J DUK). Sunrize wins this round. I upgraded and added back a CDATA section, but something else appears to be
wrong for FreeWRL.</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;">For those that prefer GitHub, here are a couple of links. The major magic in the python is figuring out how to do a Script CDATA section.</div>
<div style="direction: ltr;"><br>
</div>
<div class="elementToProof" style="direction: ltr;"><a href="https://github.com/coderextreme/ci2had/blob/main/python/cleanup.py" id="OWA941a9d93-85bb-bc7a-53d4-9116a9588c40" class="x_OWAAutoLink" originalsrc="https://github.com/coderextreme/ci2had/blob/main/python/cleanup.py" data-auth="NotApplicable">ci2had/python/cleanup.py
at main · coderextreme/ci2had</a> (HAnimDisplacer clean up)</div>
<div style="direction: ltr;"><a href="https://github.com/coderextreme/ci2had/blob/main/resources/CleanedMultiFacialAnimationMenu.x3d" id="OWA2b85c620-2eba-aa68-1455-40fa7a645121" class="x_OWAAutoLink" originalsrc="https://github.com/coderextreme/ci2had/blob/main/resources/CleanedMultiFacialAnimationMenu.x3d" data-auth="NotApplicable">ci2had/resources/CleanedMultiFacialAnimationMenu.x3d
at main · coderextreme/ci2had</a></div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;">I will continue to work on removing the script.</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;">Here's it's cousin that no longer works in FreeWRL. I have not tried all versions:</div>
<div style="direction: ltr;"><br>
</div>
<div style="direction: ltr;"><a href="https://github.com/coderextreme/ci2had/blob/main/resources/MultiFacialAnimationMenu.x3d" id="OWA0bf60c6d-1498-9b78-26e8-303a439db506" class="x_OWAAutoLink" originalsrc="https://github.com/coderextreme/ci2had/blob/main/resources/MultiFacialAnimationMenu.x3d" data-auth="NotApplicable">ci2had/resources/MultiFacialAnimationMenu.x3d
at main · coderextreme/ci2had</a></div>
</body>
</html>