[x3d-public] [create3000/sunrize] Joe doesn't kick or move in sunrize. (Issue #6)
Joe D Williams
joedwil at earthlink.net
Fri May 31 10:34:45 PDT 2024
Right, there is nothing in there that says to ignore the skeleton if joints field is not there.
Also, there is no hint of how the joints, segments, and sites fields are applied. Whatever it is they should all be treated the same.
Next, there is no browser that actually needs the fields, except one that fails anim and skin if joints field not there.
Finally, the browser must actually ignore those fields because otherwise the thing would be drawn twice, once with DEFs and once with USEs. in those fields.
Again, those fields are broke because all that is necessary, due to the exact naming requirements, is the contents of the "name" field of each Joint, Segment, and Site.
Thanks,
Joe
-----Original Message-----
From: John Carlson <yottzumm at gmail.com>
Sent: May 31, 2024 12:07 AM
To: Joe D Williams <joedwil at earthlink.net>
Cc: Extensible 3D (X3D) Graphics public discussion <x3d-public at web3d.org>, create3000/sunrize <reply+AAFMJ5YNMQD2V3WUI2UO2AOEMMNGREVBNHHITSFMII at reply.github.com>, <h-anim at web3d.org>
Subject: Re: [x3d-public] [create3000/sunrize] Joe doesn't kick or move in sunrize. (Issue #6)
So, I did some research. Here’s what tooltips says:
[joints accessType inputOutput (https://www.web3d.org/x3d/content/X3dTooltips.html#accessType), type MFNode (https://www.web3d.org/x3d/content/X3dTooltips.html#MFNode) array, empty list] [HAnimJoint (https://www.web3d.org/x3d/content/X3dTooltips.html#HAnimJoint)]
The joints field contains a list of USE references for all HAnimJoint node instances found within the preceding skeleton hierarchy.
Hint: order is irrelevant since names are contained in the original DEF objects.
Hint: these USE nodes can be utilitized by inverse kinematics (IK) and animation engines.
Warning: the number of contained <HAnimJoint USE='*' containerField='joints'/> nodes at top level of HAnimHumanoid needs to match the number of corresponding HAnimJoint node instances found within the preceding skeleton hierarchy.
Warning: top-level HAnimJoint USE nodes must include containerField='joints' for proper validation and operation
The first warning is the relevant one.
I am not sure about the standard.
Perhaps we’re talking best practices.
John
On Thu, May 30, 2024 at 8:17 PM Joe D Williams <joedwil at earthlink.net (mailto:joedwil at earthlink.net)> wrote:
> The HAnimHumanoid node has a MFNode field joints which must contain all joint nodes, then skinning will work.
This is the only player or browser or any tool I have encountered using that rule. ...
Seriously, this has to be discussed.
There is nothing in the spec that says how the joints, segments, sites fields are to be used, especially to ignore animations or skin if the Joint is not included in the joints field.
The user code is there to define the skeleton and all joint, segment site nodes must be treated the same, that is rendered if in the user code. Whatever those other fields do I don't now from the spec so sure, platform dependent, but not free to ignore, I hope.
Thanks,
Joe
-----Original Message-----
From: Extensible 3D (X3D) Graphics public discussion <x3d-public at web3d.org (mailto:x3d-public at web3d.org)>
Sent: May 29, 2024 12:08 PM
To: John Carlson <yottzumm at gmail.com (mailto:yottzumm at gmail.com)>, create3000/sunrize <reply+AAFMJ5YNMQD2V3WUI2UO2AOEMMNGREVBNHHITSFMII at reply.github.com (mailto:reply%2BAAFMJ5YNMQD2V3WUI2UO2AOEMMNGREVBNHHITSFMII at reply.github.com)>, <x3d-public at web3d.org (mailto:x3d-public at web3d.org)>
Cc: Joe D Williams <joedwil at earthlink.net (mailto:joedwil at earthlink.net)>
Subject: Re: [x3d-public] [create3000/sunrize] Joe doesn't kick or move in sunrize. (Issue #6)
> The HAnimHumanoid node has a MFNode field joints which must contain all joint nodes, then skinning will work.
This is the only player or browser or any tool I have encountered using that rule. Same for both joint animations and joint-to-skin point bindings?What is the connection? For skin, you can't ignore skinCoordIndex and skinCoordWeight fields just because the Joint is not found in joints. John, maybe try for what happens when just a few joints are left out of the llist. Does this not recognize the humanoid if no segments or sites fields? Whatever, the rules for use of those three fields should be consistentThanks, Joe
-----Original Message-----
From: John Carlson <yottzumm at gmail.com (mailto:yottzumm at gmail.com)>
Sent: May 29, 2024 7:22 AM
To: Joe D Williams <joedwil at earthlink.net (mailto:joedwil at earthlink.net)>, create3000/sunrize <reply+AAFMJ5YNMQD2V3WUI2UO2AOEMMNGREVBNHHITSFMII at reply.github.com (mailto:reply%2BAAFMJ5YNMQD2V3WUI2UO2AOEMMNGREVBNHHITSFMII at reply.github.com)>
Cc: Author <author at noreply.github.com (mailto:author at noreply.github.com)>, create3000/sunrize <sunrize at noreply.github.com (mailto:sunrize at noreply.github.com)>
Subject: Re: [create3000/sunrize] Joe doesn't kick or move in sunrize. (Issue #6)
Ah, thanks. That makes sense, Joe often leaves off the joints field. Sigh.
On Wed, May 29, 2024 at 9:19 AM Holger Seelig <notifications at github.com (mailto:notifications at github.com)> wrote:
The HAnimHumanoid node has a MFNode field joints which must contain all joint nodes, then skinning will work.
—
Reply to this email directly, view it on GitHub (https://github.com/create3000/sunrize/issues/6#issuecomment-2137534969), or unsubscribe (https://github.com/notifications/unsubscribe-auth/AAFMJ54XCHA6LHSRPCLBTP3ZEXPWRAVCNFSM6AAAAABIEQ2ITSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMZXGUZTIOJWHE).
You are receiving this because you authored the thread.Message ID: <create3000/sunrize/issues/6/2137534969 at github.com (mailto:2137534969 at github.com)>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20240531/c097c715/attachment.html>
More information about the x3d-public
mailing list