[x3d-public] Mantis 1517: HAnimHumanoid.motionsEnabled field and HAnimMotion.enabled field
Don Brutzman
don.brutzman at gmail.com
Sat Oct 25 00:12:31 PDT 2025
Preamble: thanks John for flagging the fields in question, thanks Holger
for having implemented HAnimMotion in X_ITE. Looks great!
I checked the X3D XML Schema, DTD, X3DUOM, Tooltips etc. and the default
value listed for HAnimMotion is TRUE.
Summary: meanwhile found two specification problems, proposed corrections
follow.
- The X3D architecture lists the default value of *enabled *field as
TRUE (as with other nodes having an *enabled *field) but HAnim
Architecture does not match, having value FALSE. This is an error, (to my
knowledge) we do not have any other fields with different values in X3D and
HAnim architectures.
- The X3D Architecture does not include any description of expected
behavior if the HAnimMotion.motionsEnabled MFBool field is an empty list.
We should define that default behavior. In keeping with other defaults
that have animation nodes active when initialized, proposed words follow to
do the same in this case.
Details: here is a new Mantis issue for reporting and resolving the
subject-line inconsistencies.
Please pardon any verboseness. It is important to document issues and
resolutions thoroughly so that we "do the right thing" and also understand
why when archiving for possible future scrutiny.
Questions: are the proposed improvements reasonable and sufficient? Any
better ideas?
- Mantis 1517: HAnimHumanoid.motionsEnabled field and
HAnimMotion.enabled field
- https://mantis.web3d.org/view.php?id=1517
Summary 0001517: HAnimHumanoid.motionsEnabled field and HAnimMotion.enabled
field
Description Need to check that default values in HAnim and X3D
architectures match.
- mismatch: default values for HAnimMotion.enabled field, FALSE in HAnim
and TRUE in X3D
Need to ensure that HAnimHumanoid.motionsEnabled field is well defined: yes
it is.
Additional Information * HAnim, 19774-2, HAnim Part 2: motion data animation
* 6 HAnim motion data animation using Motion objects, 6.3 Data structure of
Motion object
* 6.3 Data structure of Motion object
*
https://www.web3d.org/documents/specifications/19774/V2.0/MotionDataAnimation/MotionNodes.html#MotionObject
interface Motion {
[...]
Boolean enabled false
* 6.4 Extended definition of Humanoid object
*
https://www.web3d.org/documents/specifications/19774/V2.0/MotionDataAnimation/MotionNodes.html#HumanoidObjectExtension
interface Humanoid {
#-- Fields defined in ISO/IEC 19774-1 --#
...
#-- Fields defined in this document --#
int loa -1 [-1,4]
sequence<Object> motions [] [Motion]
sequence<Boolean> motionsEnabled []
}
The motionsEnabled field contains a list of Boolean values which indicate
whether the corresponding Motion object is active. The order of values in
the motionsEnabled field shall correspond exactly to the the order of the
Motion objects listed in the motions field. Excess motionsEnabled values
shall be ignored. Note that the corresponding Motion object's enabled field
shall also be true for object animation to occur.
* X3D Architecture, 26 Humanoid Animation (HAnim) component, 26.3.2
HAnimHumanoid
*
https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4.1-CD/Part01/components/hanim.html#HAnimHumanoid
HAnimHumanoid : X3DChildNode, X3DBoundedObject {
[...]
MFBool [in,out] motionsEnabled []
* 26.3.4 HAnimMotion
*
https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4.1-CD/Part01/components/hanim.html#HAnimMotion
HAnimMotion : X3DChildNode {
[...]
SFBool [in,out] enabled TRUE
Tags ,
Attach Tags (Separate by ",") Existing tags1356apacheCD Ballot
commentDocument
styleExamplesfileHAnimHTML5JSONMantisMetaverseSAISchemasecurityserverspam
uploadV3.3 CommentV4.0V4.0 ResolutionValidationWebsiteWebXRX3DUOM
Activities
<https://mantis.web3d.org/view.php?id=1517#>
brutzman <https://mantis.web3d.org/view_user_page.php?id=10>
2025-10-24 18:33
administrator ~0003856 <https://mantis.web3d.org/view.php?id=1517#c3856>
Last edited: 2025-10-24 18:33
View 2 revisions
<https://mantis.web3d.org/bug_revision_view_page.php?bugnote_id=3856>
Lots of detail, but one glaring detail here. Unlike all other nodes in X3D,
HAnimMotion is disabled by default.
Two recommended specification changes:
a. HAnim architecture for HAnimMotion: revise as
Boolean enabled true
b. X3D architecture for HAnimHumanoid, add prose to facilitate operation:
"The motionsEnabled field is empty by default. If the HAnimHumanoid node
includes one or more child HAnimMotion nodes, then an empty motionsEnabled
field indicates that all motions are enabled, and is functionally
equivalent to an MFBool array of identical length consisting of TRUE
values."
Regarding our test scene KoreanCharacterMotionAnnexD01Jin.x3d,
- X3D Example Archives: Humanoid Animation, Specifications, Korean
Character Motion Annex D 01 Jin
- changed incorrectly modeled enabled='false' to enabled='true'
- added description, added loop='true'
- added loop='true' for repeated play
- translated Jin location, adjusted Viewpoint for better viewing
- uploaded updates:
-
https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/KoreanCharacterMotionAnnexD01JinIndex.html
Also found some problems and fixed them in X3D-Edit, need to fix a bit more
and that will be available in next release.
More on HAnimMotion node:
- Exchangeable Humanoid Animation Using H-Anim
and Motion Capture Data
- Myeong Won Lee, Chul Hee Jung, Mingeun Lee, and Don Brutzman,
-
https://www.web3d.org/x3d/content/examples/HumanoidAnimation/KoreanCharacterHumanMotion_Infotech2014_140706.pdf
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/20251025/6f9a34e7/attachment-0001.html>
More information about the x3d-public
mailing list