Prototypes for HAnimBehavior node, which collects OrientationInterpolators for aggregate animation of an HAnim humanoid model, and HAnimBodyBehaviorChooser, which selects one body and enables/disables multiple aggregated behaviors.
Don Brutzman, Jeff Weekley, MV4205 Advanced X3D Authoring class, and Keith Victor
under development. should joint translations be exposed? upgrade to HAnim v2.2
X3D-Edit 4.0, https://www.web3d.org/x3d/tools/X3D-Edit
The HAnimBehavior node models a single humanoid behavior either for an entire body or simply parts of a body. It collects a TimeSensor clock with a single PositionInterpolator and multiple OrientationInterpolator nodes to provide a single humanoid behavior.
Supported Level of Articulation (LOA) support needed by authored HAnimBehavior set of OrientationInterpolator values. Legal values 0 1 2 3.
how long do these interpolators take to execute?
whether or not this behavior loops (e.g. walking) or is single shot (e.g. shake hands).
when time now >= startTime isActive becomes true and TimeSensor becomes active
when stopTime becomes <= time now isActive becomes false and TimeSensor becomes inactive
when time now >= pauseTime isPaused becomes true and TimeSensor becomes paused
when resumeTime becomes <= time now isPaused becomes false and TimeSensor becomes inactive
cycleTime sends a time outputOnly at startTime and also at the beginning of each new cycle
isActive true/false events are sent when TimeSensor starts/stops running
isPaused true/false events are sent when TimeSensor is paused/resumed
current elapsed time since TimeSensor activated/running cumulative in seconds and not counting any paused time
continuously sends the absolute time (since January 1 1970)
fraction_changed continuously sends value in range [0 1] showing time progress in the current cycle.
The HAnimBodyBehaviorChooser node allows an author to select one of several HAnimHumanoid bodies and simultaneously apply multiple HAnimBehavior animations to the active body. Individual behaviors may be enabled or disabled at any time.
Level of Articulation (LOA) support needed by authored HAnimBehavior set of OrientationInterpolator values. Legal values 0 1 2 3.
whichBody is selected default is initial member of HumanoidArray
[HAnimBehavior] nodes only some or all of which may be enabled. Warning: do not animate a single joint with more than one interpolator at a given time.
indicate which HAnimBehavior nodes are activated, empty indicates all enabled true
enable corresponding behavior identified by index number
disable corresponding behavior identified by index number
"HAnimBehaviorPrototypesScript.js" "https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Prototypes/HAnimBehaviorPrototypesScript.js"
remember prior body index to avoid unnecessary ROUTE teardown and creation