[x3d-public] HAnimDisplacer effect on coord.point

John Carlson yottzumm at gmail.com
Tue Feb 18 11:25:11 PST 2025


Don, we’re currently working on a HUD for Joe, I don’t currently have an
online example of that.

Otherwise, I’m waiting on someone deciding which meshes to merge.  I could
take the lead on this.

I could use a tutorial on the Layering and Layout components, examples
don’t seem to help.  I may try to adopt a 3D HUD based on examples.
Something with the 2D overlay in WORLD space would help tremendously, or
some conversion from WORLD space.

We already have 3D menus, so a 3D HUD might be easiest.

Thanks,

John
On Mon, Feb 17, 2025 at 11:18 PM Brutzman, Donald (Don) (CIV) via
x3d-public <x3d-public at web3d.org> wrote:

> Wondering, do we have a simple excerpted example that we can look at yet?
> That will help guide these discussions.
>
> Don't need a full human body animation in all its displaceable glory...
>
>
> 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 Joe D
> Williams via x3d-public <x3d-public at web3d.org>
> *Sent:* Saturday, February 15, 2025 6:55 PM
> *To:* Holger Seelig <holger.seelig at yahoo.de>; Andreas Plesch <
> andreasplesch at gmail.com>
> *Cc:* joedwil at earthlink.net <joedwil at earthlink.net>; X3D <
> x3d-public at web3d.org>; Carol McDonald <cemd2 at comcast.net>
>
> *Subject:* Re: [x3d-public] HAnimDisplacer effect on coord.point
>
>
>  > coord.point changes are very very expensive quickly,
>
>
>
> Right, the processing time gets expensive as the number of points moved.
>
> If level 1 segment geometry where the mesh is driven directly by a joint,
> then it easier since weight is always 1.
>
> For level 2 skin, the the weight (radial movement) applied by maybe
> multiple joints needs to be computed for each point.
>
> Finally, for both levels, the displacements for selected set of points
> needs to be applied.
>
> This implies multiple passes on the subject coordinates?
>
> Whatever, these operations are common where the applications deal with
>
> a complete mesh and with sparse points of a mesh for blending.  .
>
>
>
> > with reference to CoordinateInterpolator,
>
>
>
> These are useful when controlling all points of a target mesh.
>
> All points of a mesh must be included and same number of points at each
> keyframe.
>
> This style was used in first step of the current example x3d FACS because
>
> face geometry is made from multiple shapes. CoordinateInterpolater sets
>
> for each shape for each elemental action moved the points.
>
> This was simplified to using the same face for each action example
>
> and then replaced the CIs with sets of Displacers.
>
> Now have developed further to combine individual actions to make a
>
> specific expression which consists of multiple elemental movements.
>
> However, I think we want to evolve towards a basic single mesh face
>
> with some individual shapes for like teeth, hair, eyeballs, eyelids,
> tongue, maybe ears?
>
> and using joint nodes to control, where appropriate.
>
>
>
> Regardless of how the points are moved for the next frame, it has to be
>
> considered that geometry points will be moved directly by joint
> rotations,
>
> by a weighting algorithm using multiple joint rotation inputs,
>
> and by one or more scalar-driven Displacer inputs.
>
>
>
> Thanks for HAnim,
>
> Joe
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> -----Message-----
>
> From: Holger Seelig <holger.seelig at yahoo.de>
> Sent: Feb 9, 2025 11:23 AM
> To: Andreas Plesch <andreasplesch at gmail.com>
> Cc: X3D <x3d-public at web3d.org>, Joseph D Williams <joedwil at earthlink.net>,
> Carol McDonald <cemd2 at comcast.net>
> Subject: Re: [x3d-public] HAnimDisplacer effect on coord.point
>
>
> I don't think so, coord.point changes are very very expensive quickly, and
> as Michalis said earlier, with reference to CoordinateInterpolator, we
> should get rid of them.
>
> Holger
> --
> Holger Seelig
> Leipzig, Germany
>
> holger.seelig at yahoo.de
> https://create3000.github.io/x_ite/
>
> Am 09.02.2025 um 19:44 schrieb Andreas Plesch <andreasplesch at gmail.com>:
> Yes, that is an option. However,coord.point changes are very very
> expensive quickly, and as Michalis said earlier, with reference to
> CoordinateInterpolator, we should get rid of them.
>
> Andreas
>
> On Sun, Feb 9, 2025, 1:40 PM Holger Seelig <holger.seelig at yahoo.de> wrote:
>
> X_ITE applies the HAnimDisplacers in the shader, thus no coord.point field
> has to be changed.
> Maybe that helps.
>
> Best regards,
> Holger
>
> --
> Holger Seelig
> Leipzig, Germany
>
> holger.seelig at yahoo.de
> https://create3000.github.io/x_ite/
>
> Am 09.02.2025 um 19:33 schrieb Andreas Plesch via x3d-public <
> x3d-public at web3d.org>:
>
> 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
>
>
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
>
> _______________________________________________
> 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/20250218/4fa2c616/attachment-0001.html>


More information about the x3d-public mailing list