<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;"><a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Displacer">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Displacer</a></p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;">" For the <span class="Object">Displacer</span> objects that are contained in the <em>displacers</em> field of the <span class="Object">Segment</span> objects, the <em>displacements</em> are defined and applied in the <span class="Object">Segment</span> coordinate system. The base mesh for the morphed <span class="Object">Segment</span> is the original mesh defined in the <span class="Object">Segment</span>.</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">For the <span class="Object">Displacer</span> objects that are contained in the <em>displacers</em> field of the <span class="Object">Joint</span> objects, the <em>displacements</em> are applied to the deformable mesh specified in the <em>skinCoord</em> field of the <span class="Object">Humanoid</span> object. The <em>displacements</em> are defined in the local coordinate system of the <span class="Object">Joint</span> object that contains the <span class="Object">Displacer</span>.</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">The weighted <em>displacements</em> shall be applied to the <em>skinCoord</em> array in the coordinate system of the <span class="Object">Humanoid</span> object. Therefore, the <em>displacements</em> shall be transformed from the <span class="Object">Joint</span> object space into the <span class="Object">Humanoid</span> object space. The base mesh for the morphed skin is the deformed mesh that results from the bone-based skin deformation. "</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;">So, don't need anything extra field for Segment geometry but it seems that limits a</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Segment to one geometry if displacer is used, although displacer in Segment</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">will probably work with index according to the order the points appear</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">in the coord points field(s) if multiple geometries in Segment. </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Overall that is the way the skin works. If skin is actually</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">composed of select points of various Segment geometries</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">instead of a single geometry, then the only the points in skinCoord</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">are actually animated, </p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Thanks,</p>
<p style="margin: 0.1rem 0; line-height: 1.0;">Joe</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </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: Extensible 3D (X3D) Graphics public discussion <x3d-public@web3d.org><br>Sent: Feb 8, 2025 3:13 AM<br>To: X3D Graphics public mailing list <x3d-public@web3d.org><br>Cc: Andreas Plesch <andreasplesch@gmail.com><br>Subject: [x3d-public] HAnimDisplacer effect on coord.point</p>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>
<div dir="ltr">
<div><a href="https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/hanim.html#HAnimDisplacer">https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/hanim.html#HAnimDisplacer</a></div>
<div> </div>
<div>does not directly explain what the effect of the displacer on the coord.point field of the containing HAnimSegment is. But it mentions the coord.point field and seems to imply that the coord.point field is involved.</div>
<div> </div>
<div>So the question is if the Displacer should alter the coord.point field in order to achieve a graphical displacement, or if the Browser should only apply the displacements during rendering without a change in the coord.point field ?</div>
<div> </div>
<div>This is relevant if the coord.point field is accessed by routes or scripts, in addition to displacers.</div>
<div> </div>
<div>Thanks for any feedback or ideas,</div>
<div> </div>
<div>Andreas</div>
<div> </div>
<span class="gmail_signature_prefix">-- </span><br>
<div class="gmail_signature" dir="ltr" data-smartmail="gmail_signature">
<div dir="ltr">
<div>Andreas Plesch<br>Waltham, MA 02453</div>
</div>
</div>
</div>
</div>
<p style="margin: 0.1rem 0; line-height: 1.0;"> </p>