Parameter reference
119 parameters. They are passed when creating the character (config) or at runtime (human.setConfig); all of them are optional and validated (name, finite number and range).
- ↔ = body length: multiplied by
bodyScale(the character's size relative to the 1.83 m reference). - ⚑ = only applied when creating the character.
- With
speedScale: 'auto'(the default), speeds and durations are also multiplied by √bodyScale and rates divided by √bodyScale (dynamic similarity, see the guide); accelerations and angles are not scaled. With'off', only lengths.
Speed and starting
| Parameter | Default | Description |
|---|---|---|
walkSpeed | 1.4 | Normal walking speed (m/s): the cruise speed when navigating on foot, at which it takes stepFrequency steps per second. It can walk faster, up to runStartSpeed. |
runSpeed | 3.0 | Maximum running speed (m/s). |
runStartSpeed | 1.7 | Speed at which the transition to running begins (m/s). A person starts running at about 2 m/s (Froude number v²/(g·leg) ≈ 0.5); below that they walk, even at a brisk pace. |
runTransition | 0.6 | Speed range (m/s) above runStartSpeed over which walking gradually turns into running. |
acceleration | 1.5 | Acceleration when starting to move (m/s²). |
deceleration | 2.5 | Deceleration when braking (m/s²). |
speedEasing | 0.35 | Smoothing of speed changes (s): the time over which acceleration or braking ramps up to its maximum and back to zero (S-curve). 0 = constant rate, no smoothing. |
Steps (walking)
| Parameter | Default | Description |
|---|---|---|
stepFrequency | 1.9 | Steps per second (counting both feet) at walkSpeed. When walking, cadence grows with the square root of speed (as in motion capture); step length provides the rest. |
minStepFrequency | 1.4 | Steps per second at near-zero speed (when starting, stopping or repositioning the feet). |
stepLength ↔ | 0.8 | Maximum step length (m): if more were needed, the step frequency increases instead. |
stepWidth ↔ | null | Lateral distance between the feet (m). null = 80 % of the rig's hip width (distance between the thighs), as in walking. |
stepHeight ↔ | 0.045 | Maximum foot height during the swing (m). |
dutyFactor | 0.61 | Fraction of the cycle each foot spends on the ground when walking (> 0.5: double support). |
walkLandingLead | 0.8 | Walking: fraction of the normal lead at which the foot lands (0–1). With 1, the stance is centred on the neutral position; with less, further back: the trailing leg extends with the heel raised before lifting off and the leading foot lands closer, as in motion capture. It applies in full when the heel lifts 45° or more at toe-off (heelLiftAngle); with less, the stance moves towards centred (with flat feet the trailing leg cannot extend as far). |
liftFraction | 0.22 | Fraction of the cycle, at the end of the stance, in which the heel rises (LIFT; at most 30 % of the stance). It starts before the other foot lands, as in real walking. |
plantFraction | 0.08 | Fraction of the cycle, at the start of the stance, in which the foot settles flat (PLANT). |
heelLiftAngle | 55 | Maximum heel angle at toe-off, pivoting on the toes (degrees). |
heelStrikeAngle | 20 | Angle of the raised toes at heel strike (degrees). |
standKneeBend | 5 | Knee bend when standing (degrees; if the model has its knees more bent at rest, the rest bend). |
stanceKneeBend | 12 | Bend of the supporting knee at landing and mid-stance, walking at walkSpeed (degrees). It grows with speed (from standKneeBend when still), as in motion capture: at a brisk pace the knees cushion more and the hips rise and fall less. |
loadingKneeBend | 14 | Extra knee bend when taking the weight after landing (cushioning), walking at walkSpeed (degrees; grows with speed). |
Running
| Parameter | Default | Description |
|---|---|---|
runStepFrequency | 2.9 | Running: steps per second at runSpeed. |
runStepLength ↔ | 1.2 | Running: maximum step length (m). |
runDutyFactor | 0.35 | Running: fraction of the cycle with the foot on the ground (< 0.5: flight phase). |
runStepHeight ↔ | 0.15 | Running: foot height in the air (m). |
runHeelLiftAngle | 45 | Running: heel angle at toe-off (degrees). |
runHeelStrikeAngle | 2 | Running: toe angle at landing (degrees; small = midfoot strike). |
runCrouch ↔ | 0.08 | Running: how much the hips drop on average (m). |
runBounce ↔ | 0.03 | Running: amplitude of the vertical bounce of the hips (m). |
runLandingLead | 0.6 | Running: fraction of the normal lead at which the foot lands (0–1). When walking the foot lands half a stance ahead of the hip; when running, closer to the body (and it lifts off further back, pushing). |
runLean | 10 | Running: forward lean of the torso (degrees). |
runArmAbduction | 9 | Running: arm angle away from the vertical (degrees). |
runElbowBend | 95 | Running: elbow bend (degrees). |
runArmSwing | 25 | Running: maximum arm swing (degrees). |
runElbowSwingBend | 10 | Running: extra elbow bend when the arm swings forward (degrees). |
Posture
| Parameter | Default | Description |
|---|---|---|
walkLean | 0 | Forward lean of the torso when standing and walking (degrees; when running it changes to runLean). |
ankleBack ↔ | 0.03 | How far the ankle sits behind the hip in the neutral foot position (m): when standing, the weight falls on the middle of the foot, ahead of the ankle. It is not taken from the model's rest pose, which may have the feet forward or back. |
Crouching
| Parameter | Default | Description |
|---|---|---|
crouchDepth ↔ | 0.32 | Crouching: how much the hips drop (m). |
crouchHipBack ↔ | 0.06 | Crouching: how far the hips move back to keep balance (m). |
crouchPelvisTilt | 15 | Crouching: forward tilt of the pelvis (degrees). |
crouchLean | 20 | Crouching: additional forward lean of the torso (degrees). |
crouchElbowBend | 35 | Crouching: additional elbow bend (degrees). |
crouchArmForward | 15 | Crouching: how far forward the arms move (degrees). |
crouchMaxSpeed | 0.8 | Crouching: maximum speed (m/s). |
crouchRate | 1.8 | How fast it crouches or stands up (fraction of a full crouch per second). |
Jumping
| Parameter | Default | Description |
|---|---|---|
gravity | 9.81 | Gravity (m/s²). |
jumpSpeed | 3.2 | Jump: vertical speed at takeoff (m/s). |
jumpCrouch ↔ | 0.12 | Jump: how far the hips sink while preparing (m). The duration of the preparation follows from this and jumpSpeed: the hips go down from rest and up again, taking off exactly at the jump speed. |
jumpToeOff | 30 | Jump: heel raise at the end of the preparation (pushing off with the toes, degrees). |
jumpTuck ↔ | 0.22 | Jump: how much the feet tuck up in the air (m). |
jumpLandingPrep | 0.22 | Jump: time before touching the ground in which the legs extend towards the landing (s). |
landingAbsorb | 0.05 | Landing: hip drop for each m/s of falling speed (m per m/s). |
maxLandingDip ↔ | 0.25 | Landing: maximum hip drop (m). |
landingTime | 0.45 | Landing: duration of the cushioning (s). |
Standing still
| Parameter | Default | Description |
|---|---|---|
idleArmAbduction | 10 | Standing still: arm angle away from the vertical (degrees; arms hang lower than when walking). |
idleElbowBend | 14 | Standing still: elbow bend (degrees). |
idleArmForward | -4 | Standing still: upper arm angle in front of the vertical (degrees; negative = back). A little back, with the elbow a little bent, the hand stays beside the thigh instead of in front of it. |
idleStepThreshold ↔ | 0.03 | Distance to the neutral position below which a foot counts as repositioned (m). More is allowed forwards and backwards: a foot slightly ahead when stopping is not corrected with another step. |
idleTurnThreshold | 8 | Orientation difference below which a foot counts as repositioned (degrees). |
Turning
| Parameter | Default | Description |
|---|---|---|
turnSpeed | 60 | Maximum turning speed (degrees/s). |
turnAcceleration | 240 | Maximum angular acceleration (degrees/s²). |
maxLateralAcceleration | 3.2 | Maximum lateral acceleration in curves (m/s²): the faster it goes, the slower it turns (ω ≤ a / v), like a runner who cannot turn sharply at full speed. |
maxTurnPerStep | 60 | Maximum turn of a foot between two of its steps (degrees): turning faster takes more steps per second. |
turnSlowdown | 0.45 | How much it slows down to turn (0–1): fraction of the speed it loses with a 180° turn left to go. The smaller the remaining turn, the less it slows (none up to 20°), and it regains speed as it completes the turn: large changes of direction happen in a tighter curve. |
Weight shift
| Parameter | Default | Description |
|---|---|---|
lateralShift | 0.25 | Fraction (0–1) of the way to the centre of support that the body shifts sideways. |
lateralShiftResponse | 20 | How fast the body shifts sideways (rad/s of the damped spring). |
Pelvis
| Parameter | Default | Description |
|---|---|---|
pelvisRotation | 5 | Maximum rotation of the pelvis towards the leading foot (degrees). |
pelvisObliquity | 4 | Maximum lateral drop of the pelvis on the side of the leg in the air (degrees). |
pelvisTilt | 3 | Forward tilt of the pelvis at walking speed (degrees). |
pelvisTiltSwing | 2 | Tilt oscillation of the pelvis with each step at walking speed (degrees, ±): forward at each heel strike and backward at mid-stance, twice per stride (±1.8° in the CMU captures). |
pelvisFrequency | 2.5 | Natural frequency of the pelvis (Hz): how quickly its rotation and drop follow the steps. Lower = more damped motion with more lag; very high = follows the feet instantly. |
pelvisDamping | 0.7 | Damping of the pelvis (1 = no overshoot; less = it overshoots a little and comes back, looser). |
Torso and head
| Parameter | Default | Description |
|---|---|---|
spineCounterRotation | 0.6 | Fraction of the pelvis rotation that the spine counteracts. |
chestCounterRotation | 0.6 | Additional fraction counteracted by the chest (sum > 1 → shoulders opposite to the pelvis). |
chestRollShare | 0.35 | Share of the compensation for the pelvic drop done by the chest instead of the lower spine (0–1): the back curves instead of bending at one point. The shoulders stay just as level. About 1/3 in the CMU captures. |
leanPerAcceleration | 4 | Torso lean per unit of acceleration (degrees per m/s²). |
maxLean | 6 | Maximum torso lean from accelerating/braking (degrees). |
headStabilization | 0.8 | How much the head is stabilized towards its rest orientation (0–1). |
headTurnLead | 0.6 | Fraction of the remaining turn the head looks ahead. |
maxHeadTurn | 45 | Maximum anticipatory turn of the head (degrees). |
chestTurnLead | 0.3 | Fraction of the remaining turn the chest turns ahead. |
maxChestTurn | 20 | Maximum anticipatory turn of the chest (degrees). |
maxTurnLean | 8 | Maximum lean into a curve (degrees). |
trunkFrequency | 4 | Natural frequency of the trunk (Hz): how quickly spine and chest follow the pelvis. Lower = heavier trunk that arrives later (the chest a bit more than the spine). |
trunkDamping | 0.6 | Damping of the trunk (1 = no overshoot; less = it overshoots a little and comes back). |
trunkInertia | 0.5 | Trunk inertia: how much it leans from the accelerations of the hips (degrees per m/s²): forward when their descent stops at each step, sideways against the sway. |
Arms
| Parameter | Default | Description |
|---|---|---|
idleArmAbduction | 10 | Standing still: arm angle away from the vertical (degrees; arms hang lower than when walking). |
idleElbowBend | 14 | Standing still: elbow bend (degrees). |
idleArmForward | -4 | Standing still: upper arm angle in front of the vertical (degrees; negative = back). A little back, with the elbow a little bent, the hand stays beside the thigh instead of in front of it. |
armAbduction | 6 | Arm angle away from the vertical, outwards (degrees). |
armForward | 0 | Walking and running: upper arm angle in front of the vertical around which it swings (degrees; negative = back). The swing is centred somewhat further back anyway, as in real walking. |
elbowBend | 22 | Elbow bend at rest (degrees). |
armSwing | 15 | Forward/backward arm swing when walking at walkSpeed (degrees); it grows with speed. The centre of the swing sits slightly behind the vertical, as in real walking. |
elbowSwingBend | 12 | Extra elbow bend when the arm swings forward (degrees). |
armSwingFrequency | 3.5 | Natural frequency of the arm (Hz): how quickly it follows the swing driven by the legs. Lower = heavier arm with more lag. |
armSwingDamping | 0.7 | Damping of the swing (1 = no overshoot; less = the arm overshoots a little, like a pendulum). |
armInertia | 2 | Inertia: how much the arms lag behind when accelerating (and swing ahead when braking) (degrees per m/s²). |
shoulderSwing | 0.25 | How much the shoulder (clavicle) follows the arm swing, forward and back (fraction of the arm angle). |
shoulderDrop | 3 | Shoulder drop from the weight of the relaxed arm (degrees). |
shoulderForward ↔ | 0 | How far the shoulder joint sits in front of the base of the neck, horizontally (m; negative = behind): the clavicle turns back or forward (up to 30°) to put it there, whatever the model's rest pose (some have the shoulders hunched forward). Less = shoulders further back. Needs the neck and shoulder bones. |
forearmFrequency | 3 | Natural frequency of the forearm (Hz): it follows the arm like a pendulum hanging from the elbow. Lower = looser forearm (it lags when the arm accelerates and carries on when it brakes). |
handFrequency | 4 | Natural frequency of the hand (Hz): it follows the forearm with a little more lag (loose wrist). |
fingerCurl | 1 | How much the fingers close (if the rig has them): 0 = as in the model's rest pose, 1 = relaxed hand (fingers slightly bent and together, thumb towards the index finger), more = more closed. |
fingerFrequency | 3.5 | Natural frequency of the fingers (Hz): they follow the swing of the hand with a small lag. |
Touching surfaces
| Parameter | Default | Description |
|---|---|---|
touchReachTime | 0.75 | Duration of the gesture of bringing the hand to the surface (s). In the CMU reaches (subject 144), 0.65–0.8 s from the hanging arm, with a bell-shaped speed profile. |
touchReleaseTime | 0.65 | Duration of the hand's return to its swing after letting go (s). CMU: ~0.7 s, symmetric bell. |
touchHoldTime | 0.25 | Minimum time with the hand resting on the surface (s). When walking, it lets go once the point falls behind. |
touchMaxReach | 0.82 | Maximum distance from shoulder to wrist when touching, predicted when the gesture starts (fraction of the arm, 0–1). In CMU, reaching as far as possible, 0.94–0.99 (elbow at 140–165°); touching in passing does not stretch as much, and the sway of walking (±3–4 cm at the shoulder) makes it arrive a little more extended. |
touchCooldown | 0.3 | Pause after letting go before touching something again on its own (s). |
Natural variation
| Parameter | Default | Description |
|---|---|---|
variation | 1 | Natural variation (0 = every step identical; 1 = that of a person): cadence, trunk lean, gaze and the swing of each arm change slightly and slowly, differently for each character (according to its seed). |
Point and click (moveTo)
| Parameter | Default | Description |
|---|---|---|
arriveRadius ↔ | 0.05 | Distance to the target at which it counts as arrived (m). |
maxWalkTurnAngle | 75 | Heading error from which the target counts as well off to the side: it stops going at its normal speed and turns while walking, along a curve whose radius is limited by the distance (it does not stop to turn) (degrees). Beyond 120° (behind) it no longer curves: it brakes and turns towards the target in 2–3 steps. |
headingLockRadius ↔ | 0.4 | Near the target it stops correcting its heading (avoids circling around the point) (m). |
stopTolerance ↔ | 0.1 | Extra distance to the target within which, once stopped after braking, it counts as arrived (m). |
Advanced: clearances and probes
| Parameter | Default | Description |
|---|---|---|
toeClearance ↔ | 0.02 | Minimum clearance between the toes and the terrain during the swing (m). |
maxExtraStepHeight ↔ | 0.3 | Maximum extra swing height to clear obstacles (m). |
groundProbeHeight ↔ | 1.5 | Height above the root from which the ground under the body is searched (m). |
groundProbeDepth ↔ | 2.5 | Depth below the root down to which the ground is searched when walking (m). |
footProbeHeight ↔ | 0.5 | Height above the target ankle from which the ground under each foot is searched (m). |
footProbeDepth ↔ | 0.6 | Depth below the target ankle down to which the ground under each foot is searched (m). |
footProbeTolerance ↔ | 0.002 | Minimum height difference of the ground under the toes relative to the heel plane for the foot to tilt (m). |
kneePoleDistance ↔ ⚑ | 0.6 | Distance ahead of the knee of the point it bends towards (IK pole) (m). Only at creation. |
Style presets
They are chosen when creating the character (preset: '…') or at runtime (human.applyPreset('…')); config and the overrides of applyPreset take precedence over the preset.
tired: Tired: short, low steps (shuffling), leaning trunk, arms nearly still, slow to react.sneaky: Sneaky: slow, short and high steps with long stance, trunk forward, arms close to the body, very steady head.athletic: Athletic: faster and more responsive, long strides, leaning run with lots of arm swing, jumps higher and turns quickly.heavy: Heavy: wide stance, marked side-to-side sway, slow and low steps, arms held out, starts and stops slowly.
Values each preset changes (empty = the default):
| Parameter | Default | tired | sneaky | athletic | heavy |
|---|---|---|---|---|---|
walkSpeed | 1.4 | 0.8 | 0.7 | 1.3 | 0.9 |
runSpeed | 3.0 | 2.2 | 2.5 | 4.5 | 2.4 |
acceleration | 1.5 | 0.8 | 1.2 | 3 | 0.9 |
deceleration | 2.5 | 1.8 | 3 | 4 | 1.5 |
stepFrequency | 1.9 | 1.7 | 1.5 | 2.1 | 1.6 |
minStepFrequency | 1.4 | 1.2 | 1.1 | 1.2 | |
stepLength | 0.8 | 0.55 | 0.5 | 0.85 | 0.6 |
stepWidth | null | 0.3 | |||
stepHeight | 0.045 | 0.023 | 0.059 | 0.054 | 0.032 |
dutyFactor | 0.61 | 0.68 | |||
runStepFrequency | 2.9 | 3.2 | |||
runStepHeight | 0.15 | 0.28 | |||
runLean | 10 | 12 | |||
walkLean | 0 | 15 | 18 | ||
idleArmAbduction | 10 | 5 | 12 | 18 | |
idleElbowBend | 14 | 6 | 40 | ||
runArmSwing | 25 | 45 | |||
crouchDepth | 0.32 | 0.4 | |||
crouchMaxSpeed | 0.8 | 1.2 | |||
jumpSpeed | 3.2 | 2.4 | 4 | 2.4 | |
heelLiftAngle | 55 | 15 | 30 | ||
heelStrikeAngle | 20 | 6 | 3 | 8 | |
turnSpeed | 60 | 45 | 120 | 45 | |
turnAcceleration | 240 | 360 | |||
lateralShift | 0.25 | 0.35 | 0.15 | 0.5 | |
pelvisRotation | 5 | 8 | |||
pelvisObliquity | 4 | 7 | |||
pelvisTilt | 3 | 5 | |||
headStabilization | 0.8 | 0.5 | 0.95 | ||
armAbduction | 6 | 8 | 16 | 22 | |
elbowBend | 22 | 8 | 45 | ||
armSwing | 15 | 6 | 4 | 18 | 11 |
elbowSwingBend | 12 | 5 | 5 |