[x3d-public] JSHumanoids repo—resize, reanimate your humanoids

John Carlson yottzumm at gmail.com
Thu Mar 7 12:08:08 PST 2024


Reorient should just change OrientationInterpolators, no changes to
Humanoid figures. I am fairly dependent in which nodes I traverse right now
hunting for interpolators, I can add more.  DOM rescaling is not possible,
because JinLOA4.x3d has a stack overflow which X3DJSAIL hides.  Plus DOM is
not really typesafe.  In other words, I am not sure I do full traversal.
Normally I handle interpolators at the top scene level.

Rescale should handle multiple meshes, I am unsure about how many types of
geometries I handle.  Make a request for a geometry node to be added.
Mostly I’ve been doing IndexedFaceSets.

Note that rescaling just works on humanoids right now.  Set your
HAnimHumanoid scale attribute.

These are fairly dang simple operations.  One can consider applying a
generic transform, but I haven’t gotten there yet.

John

On Thu, Mar 7, 2024 at 10:08 AM Carol McDonald <cemd2 at comcast.net> wrote:

> But I don't always want to rescale.  If the humanoids are different -
> let's say between toddlers and adults, I would want multiple meshes that
> have very different rigs and movements.
>
> Carol
>
> On 03/07/2024 3:48 AM PST John Carlson <yottzumm at gmail.com> wrote:
>
>
> https://github.com/coderextreme/JSHumanoids
>
> Under Apache 2.0 license.  There’s also an .x3d file from the humanoid
> archive—license is included.  Parts derived from X3DUOM.  Alternative
> X3DJSAIL jars included.  Please also provide license for X3dToJson.xslt.
>
> For applying transformations to an X3DJSAIL scenegraph, like rescaling
> Humanoids and changing OrientationInterpolators through the whole
> scenegraph.  3D Model is in X3DJSAIL-GraalJS, extending beyond limits of
> Java binding code size.
>
> I’d like to thank Don Brutzman for X3DUOM, X3DJSAIL and X3dToJson.xslt (I
> can’t use CommandLine due to Java bug/stack overflow),  Roy Walmsley for
> X3DUOM and X3D JSON Schema, the authors of JinLOA4.x3d, Java and JavaScript
> language developers, vim developers, Saxon developers, Python language
> developers and Git developers.
>
> Rescaling takes a Humanoid with a scale field, and multiplies and adds the
> values down the humanoid hierarchy.
>
> Reorientation currently negates the rotation, achieving a kind of
> satisfaction for converting +Z to -Z and vica versa for
> OrientationInterpolators.  Negating any axis is also possible.
>
> Thanks to Joe Williams for the inspiration,  and to Andreas Plesch for
> showing it’s possible, and Katy and Carol for Gramps (not included).
>
> If anyone wants a node-java version, let me know.
>
> This might be a programming model for future WinterAndSpring work.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20240307/4235afae/attachment.html>


More information about the x3d-public mailing list