[x3d-public] HAnim skeleton visual-debugging example
Don Brutzman
don.brutzman at gmail.com
Wed Apr 8 09:11:13 PDT 2026
Hey Joe, I've run into an interesting problem.
After assembling the simple AllBonesCollection.x3d
<https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/AllBonesCollectionIndex.html>
and
the bone-colored left-side skeleton in AllBonesLOA5Skeletons.x3d
<https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/AllBonesLOA5SkeletonsIndex.html>
which
each use Inline, I'm almost finished assembling the right-side skeleton
which uses InlineGeometry and independent Material nodes.
This is time-consuming, painstaking work but will provide us with some very
useful models with full anatomical fidelity to the human skeleton.
Because so much detail is involved getting HAnim translation and center
values correctly copied, I typically pause along the way to make sure no
hidden errors might be accumulating. Visual inspection really helps with
debugging. Seems obvious, perhaps not so important, but here is an example
that illustrates how essential it is.
The following screenshot is interesting, it shows that some of the foot
bones are not lining up as expected. The left and right
tarsal_middle_phalanx bones for 2 and 3 (second and third toes, where the
big toe is first) did not land where expected. To help with visual
debugging, I changed the Appearance of bone l_tarsal_middle_phalanx_2 to
yellow, confirming exactly where it landed... see them? Screenshot using
Sunrize follows. (JinLOA4
<https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/JinLOA4Index.html>
is in the middle to confirm scaling and feet centered on the floor.)
[image: image.png]
Further sleuthing is available on the left-side white skeleton which has
TouchSensor descriptions on each Inline bone. Sure enough, close
inspection via mouseover of each individual HAnimSegment bone confirms that
they are out of order.
It was an interesting surprise that this modeling error was not evident in
any of our other preceding model constructions. Am capturing and sharing
this debugging case here as direct evidence for the importance of
visualization techniques when building and debugging detailed models, such
as these skeletons.
The original root-cause error was due to incorrect renaming of the
cryptically named bones in the originals subdirectory
<https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/originals/index.html>
(circa
2013 or earlier). My planned fix is to rename the eight out-of-order bones
to correctly match their actual position. No doubt some further trial &
error with visual debugging will be necessary to get this correct. Once
successful, will record resolution of naming changes in the CHANGELOG.md
<https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Bones/originals/CHANGELOG.md>
file.
None of the original models will be modified or renamed, so that we retain
those originals without changes.
Onward we go... have fun with HAnim and X3D! 😀 👉 🩻
all the best, Don
--
X3D Graphics, Maritime Robotics, Distributed Simulation
Relative Motion Consulting https://RelativeMotion.info
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20260408/722d2a52/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 988565 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20260408/722d2a52/attachment-0001.png>
More information about the x3d-public
mailing list