[x3d-public] HAnimDisplacer effect on coord.point
John Carlson
yottzumm at gmail.com
Mon Feb 10 12:13:39 PST 2025
Clarification, I actually meant the Segment coord field. I’m not sure if
Site has something similar.
John
On Mon, Feb 10, 2025 at 12:23 PM Joe D Williams <joedwil at earthlink.net>
wrote:
> > Perhaps we should just make the coord field optional with Segment and
> Site displacers?
>
>
>
> please, no. If no coordIndex field,then no Displacer should be there.
>
> There are no defaults in a Displacer, there are only the same number of
> index and weight and displacements entries otherwise it shold not do
> anything.
>
> In your examples, any that are empty should be removed. Although I guess
> there is the case where these are filled by some input in runtime.
>
>
>
> Thanks,
>
> Joe
>
>
>
> -----Original Message-----
> From: Andreas Plesch <andreasplesch at gmail.com>
> Sent: Feb 9, 2025 2:35 PM
> To: John Carlson <yottzumm at gmail.com>
> Cc: Joe D Williams <joedwil at earthlink.net>, Brutzman Donald (Don) (CIV) <
> brutzman at nps.edu>, Extensible 3D (X3D) Graphics public discussion <
> x3d-public at web3d.org>, Carol McDonald <cemd2 at comcast.net>
> Subject: Re: [x3d-public] HAnimDisplacer effect on coord.point
>
>
> Having a coord field is wise as it makes it unambiguous how displacers are
> applied.
>
> The ManyClocks.x3d example has a lot of HAnimSegment nodes which are
> empty, only have default values, and seem useless.
>
> In particular a NULL coord field invites problems.
>
> Probably such a node should be just ignored but it would be good to have
> more specific spec. guidance, eg. allowing undefined browser behavior
> similar to many other nodes.
>
> There is also a weird Segment node (hanim___4) which does not have
> geometry and a NULL coord field, but has a displacer. The displacer is even
> the target of a route. It would be good if such self in-consistent content
> would be allowed to lead to undefined browser behavior as well.
>
> Andreas
>
> On Sun, Feb 9, 2025, 2:34 PM John Carlson <yottzumm at gmail.com> wrote:
>
>> Perhaps we should just make the coord field optional with Segment and
>> Site displacers? If not specified, look in HAnimHumanoid.skinCoord, or
>> make the search for coords hierarchical. As Joe says, a cascade.
>>
>> Wondering,
>>
>> John
>>
>> On Sun, Feb 9, 2025 at 12:33 PM Andreas Plesch <andreasplesch at gmail.com>
>> wrote:
>>
>>> That would be the point field of a Coordinate node
>>>
>>>
>>> https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/rendering.html#Coordinate
>>>
>>> which is used by the coord field of
>>>
>>>
>>> https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/hanim.html#HAnimSegment
>>>
>>> Andreas
>>>
>>> On Sun, Feb 9, 2025, 12:36 PM Joe D Williams <joedwil at earthlink.net>
>>> wrote:
>>>
>>>> > coord node emit a point_changed event
>>>>
>>>>
>>>>
>>>> sorry,I don't see a field anywhere with that event. Displacer is likely
>>>> to change several points when new weight is sent. All part of the cascade
>>>> to produce the changed mesh?
>>>>
>>>> Thanks,
>>>>
>>>> Joe
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> -----Original Message-----
>>>> From: Andreas Plesch <andreasplesch at gmail.com>
>>>> Sent: Feb 9, 2025 4:25 AM
>>>> To: Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>
>>>> Cc: Extensible 3D (X3D) Graphics public discussion <
>>>> x3d-public at web3d.org>, Carol McDonald <cemd2 at comcast.net>, Joe D
>>>> Williams <joedwil at earthlink.net>, John Carlson <yottzumm at gmail.com>
>>>> Subject: Re: [x3d-public] HAnimDisplacer effect on coord.point
>>>>
>>>>
>>>> Don, Joe and John
>>>>
>>>> Thanks for collecting these references.
>>>>
>>>> But I am not sure if there is an answer to my original question. Let me
>>>> rephrase a bit the question:
>>>>
>>>> After a Displacer contained in a Segment node receives a set_weight
>>>> input, should then the coord node emit a point_changed event ?
>>>>
>>>> I do not think HAnim is concerned about that, so it is really a X3D
>>>> question.
>>>>
>>>> Thanks, Andreas
>>>>
>>>> On Sun, Feb 9, 2025, 12:49 AM Brutzman, Donald (Don) (CIV) <
>>>> brutzman at nps.edu> wrote:
>>>>
>>>>> Thanks for pointing in the right direction John.
>>>>>
>>>>> Direct links to functional requirements for Displacer in HAnim 2.0
>>>>> specification:
>>>>>
>>>>> - HAnim 2.0. Part 1: Humanoid animation (HAnim) architecture,
>>>>> Clause 4 Concepts, 4.7 Displacer object
>>>>> -
>>>>> https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/concepts.html#DisplacerObject
>>>>>
>>>>> - HAnim 2.0. Part 1: Humanoid animation (HAnim) architecture,
>>>>> Clause 6 Object interfaces, 6.6 Displacer
>>>>> -
>>>>> https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Displacer
>>>>>
>>>>> and
>>>>>
>>>>> - X3D 4.0 Architecture, Clause 26 Humanoid Animation (HAnim)
>>>>> component, 26.3.1 HAnimDisplacer
>>>>> -
>>>>> https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/hanim.html#HAnimDisplacer
>>>>>
>>>>> and informative
>>>>>
>>>>> - X3D Tooltips, HAnimDisplacer
>>>>> - https://www.web3d.org/x3d/content/X3dTooltips.html#HAnimDisplacer
>>>>>
>>>>> Thanks for implementation efforts and careful scrutiny.
>>>>>
>>>>> Questions and potential issues/clarifications/corrections are always
>>>>> welcome.
>>>>>
>>>>>
>>>>> all the best, Don
>>>>>
>>>>> --
>>>>>
>>>>> Don Brutzman Naval Postgraduate School, Code USW/Br
>>>>> brutzman at nps.edu
>>>>>
>>>>> Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA
>>>>> +1.831.656.2149
>>>>>
>>>>> X3D graphics, virtual worlds, navy robotics
>>>>> https://faculty.nps.edu/brutzman
>>>>>
>>>>>
>>>>>
>>>>> ------------------------------
>>>>> *From:* x3d-public <x3d-public-bounces at web3d.org> on behalf of John
>>>>> Carlson via x3d-public <x3d-public at web3d.org>
>>>>> *Sent:* Saturday, February 8, 2025 3:43 AM
>>>>> *To:* Extensible 3D (X3D) Graphics public discussion <
>>>>> x3d-public at web3d.org>; Carol McDonald <cemd2 at comcast.net>; Joe D
>>>>> Williams <joedwil at earthlink.net>
>>>>> *Cc:* John Carlson <yottzumm at gmail.com>; Andreas Plesch <
>>>>> andreasplesch at gmail.com>
>>>>> *Subject:* Re: [x3d-public] HAnimDisplacer effect on coord.point
>>>>>
>>>>> Here’s what HAnim spec says under Displacer:
>>>>>
>>>>> https://www.web3d.org/documents/specifications/19774/V2.0/index.html
>>>>>
>>>>> “For the *Displacer* objects that are contained in the *displacers* field
>>>>> of the *Segment* objects, the *displacements* are defined and applied
>>>>> in the *Segment* coordinate system. The base mesh for the morphed
>>>>> *Segment* is the original mesh defined in the *Segment*.”
>>>>>
>>>>> And here’s what it says under Segment:
>>>>>
>>>>> “
>>>>>
>>>>> The *coord* field is used for *Segment* objects that have deformable
>>>>> meshes and shall contain coordinates referenced from the indexed mesh for
>>>>> the *Segment* object. The coordinates are given the same name as the
>>>>> *Segment* object, but with a "_coords" appended (e.g.,"skull_coords"
>>>>> ).”
>>>>> displacements are an offset from the mesh, with weight from 0 to 1.
>>>>> So weight times displacement is total offset from base mesh. 0 weight = no
>>>>> offset, 1 weight = full displacements offset
>>>>>
>>>>> The Coordinate point is maintained to handle weight = 0. Weight
>>>>> ranges from 0 to 1, but double check.
>>>>>
>>>>> Joe or Carol might know where to find it in the HAnim spec.
>>>>>
>>>>> I believe the answer is, “during rendering,”. Since weight can vary
>>>>> with animation, and so can displacements, AFAIK. More than one displacer
>>>>> can be applied to the mesh.
>>>>>
>>>>> I have not read the spec.
>>>>>
>>>>> John
>>>>>
>>>>>
>>>>>
>>>>> On Sat, Feb 8, 2025 at 5:13 AM Andreas Plesch via x3d-public <
>>>>> x3d-public at web3d.org> wrote:
>>>>>
>>>>>
>>>>> https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/hanim.html#HAnimDisplacer
>>>>>
>>>>> 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.
>>>>>
>>>>> 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 ?
>>>>>
>>>>> This is relevant if the coord.point field is accessed by routes or
>>>>> scripts, in addition to displacers.
>>>>>
>>>>> Thanks for any feedback or ideas,
>>>>>
>>>>> Andreas
>>>>>
>>>>> --
>>>>> Andreas Plesch
>>>>> Waltham, MA 02453
>>>>> _______________________________________________
>>>>> x3d-public mailing list
>>>>> x3d-public at web3d.org
>>>>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>>>>
>>>>>
>>>>
>>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20250210/7675df77/attachment-0001.html>
More information about the x3d-public
mailing list