Character Add Constraints category - Stingray Flow Node Reference

Character Add Constraints category

Nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

string

Aim At

The target type (position or unit) to aim at.

Accepted values: Target Position Target Unit

string

Attachment Effector

The nearest effector to the weapon attachment point. Usually "Right Wrist" or "Right Hand".

Accepted values: Left Wrist Right Wrist Left Hand Right Hand

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Chest Contribution

Factor (between 0.0 and 1.0) defining how much the chest should align to the aiming vector.

float

Constraint Id

The Id of the 'aim' constraint.

float

Elbow Contribution

Factor (between 0.0 and 1.0) defining how much the attachment elbow should align to the aiming vector.

float

Hips Contribution

Factor (between 0.0 and 1.0) defining how much the hips should align to the aiming vector.

float

Maximum Angular Speed

(Not implemented yet) Maximal angular speed for the joints reorientations (to avoid discontinuities when switching between targets).

boolean

Pin Other Hand

Set to "true" when dealing with two handed weapons for the second hand to stay locked at it's position (relatively to the attachement effector).

boolean

Reference Is Strike Point

Set to "true" for contact weapons (or bare hands animations) when the "Reference_Target_Bone" represents the actual strike point.

string

Reference Target Bone

Name of the reference target bone in the unit. The reference target bone is parented to the reference bone and indicates the current FK target.

float

Shoulder Contribution

Factor (between 0.0 and 1.0) defining how much the attachment shoulder should align to the aiming vector.

string

Target Effector

The target effector (on the target unit) to aim at. Only relevant when "Aim_At" is set to "Target Unit".

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

vector3

Target Position

The target position. Only relevant when "Aim_At" is set to "Target Position".

unit

Target Unit

The character unit to aim at. Only relevant when "Aim_At" is set to "Target Unit".

unit

Unit

The character unit to add the constraint to.

event

In

This event triggers the evaluation of this node.

This constraint support both one handed and two handed weapons.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

Use this constraint to test whether a character can properly be controlled by HumanIK.

We recommend that you test all newly imported characters with this constraint first. After adding this constraint, you should see the character start dancing and doing all sorts of procedural movements. If it doesn’t, or if the character skeleton 'explodes', this means something went wrong during the import process. For example, it’s possible that no characterization information was included in your FBX data, or you’re using an unsupported joint hierarchy.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Affect Chest Rotation

How much (between 0.0 and 1.0) the chest rotation can be affected by this node (0.05 is usually a good value).

float

Affect Hips Rotation

How much (between 0.0 and 1.0) the hips rotation can be affected by this node (0.2 is usually a good value).

float

Constraint Id

The Id of the plant constraint.

boolean

Feet

Set to true to enable feet floor planting.

boolean

Hands

Set to true to enable hands floor planting.

float

Plant Depth

The planting depth value(0.0 means exactly on floor surface; 0.03 is usually a good value).

boolean

Preserve Ankle Height

Set to true to enable relative floor planting (preserve FK altitude for ankles and hips).

float

Ray Down Length

Vertical distance downwards (from the ankle/wrists effectors) for the raycast ray end position

float

Ray Up Length

Vertical distance upwards (from the ankle/wrists effectors) for the raycast ray start position

float

Rays Count

Number of rays to cast to scan terrain position and normal (1 is minimum; 9 is a generous value)

float

Smoothing

The smoothing intensity value (0.0 means no smoothing 1.5 is usually a good value).

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This constraint adapts the current character’s altitude (by vertically moving its hips and ankle transforms) so that the character properly adapts to the terrain topology.

For example, this constraint can be used to adapt a walk animation that has been recorded on flat ground to work on a bumpy terrain. It is recommended that you call a Legs Plant constraint immediately after this node to fine tune the leg joint transforms.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Constraint Id

The Id of the plant constraint.

boolean

Feet

Set to true to enable feet floor contact.

boolean

Hands

Set to true to enable hands floor contact.

float

Ray Down Length

Vertical distance downwards (from the ankle/wrists effectors) for the raycast ray end position.

float

Ray Up Length

Vertical distance upwards (from the ankle/wrists effectors) for the raycast ray start position.

float

Rays Count

Number of rays to cast to scan terrain position and normal (1 is minimum; 9 is a generous value).

float

Smoothing

The smoothing intensity value to avoid sharp adjustments (0.0 means no smoothing).

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This enables lower body floor contact on a character. Only the leg joints are affected (not the hips); the unique purpose is to avoid geometry penetration by tweaking the feet, ankle, and knee joints. This constraint is usually called for fine tuning purposes, after the Full Body Plant constraint.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

boolean

Invert Left Arm

A boolean to indicate whether to invert the left arm.

boolean

Invert Left Leg

A boolean to indicate whether to invert the left leg.

boolean

Invert Right Arm

A boolean to indicate whether to invert the right arm.

boolean

Invert Right Leg

A boolean to indicate whether to invert the right leg.

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

By default, the elbows and knees natural folding angle are set for human beings; this constraint enables you to invert the natural folding angle to solve all kinds of birds, chickens, …and so on.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

boolean

Low Definition Retarget

A boolean to indicate whether to activate the low definition solver.

boolean

Low Definition Solve

A boolean to indicate whether to activate the low definition solver.

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

When adding this constraint, you can activate the low definition solver on the character, which computes 10x faster than the default standard high precision solver. Note the low definition solver does not support floor contact, pulling and fingers/toes solving. This is a convenient way to simulates crowds at a low CPU cost.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Chest Contribution

Defines how much the chest can contribute to the target tracking (0.0: No contribution; 1.0: Full contribution).

float

Constraint Id

The Id of the 'look at' constraint.

boolean

Enable Limits

A boolean value of true enables the FOV limits.

boolean

Horizontal Only

A boolean value to indicate whether the 'look at' constraint operates only on horizontal plane (true value) or not (false value). Restrain the head (and chest) motion to the XY plan

string

Look At

The target type (position or unit) to look at.

Accepted values: Target Position Target Unit

float

Maximum Angular Speed

Maximal angular speed for the tracking vector (degrees per second).

float

Maximum Horizontal Limit Angle

Maximal horizontal angle. A value of 60 means you can turn the head up to 60 degrees left and 60 degrees right.

float

Maximum Vertical Limit Angle

Maximal vertical angle. A value of 30 means you can turn the head up to 30 degrees up and 30 degrees down.

string

Target Effector

The effector type to apply the constraint to.

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

vector3

Target Position

The target position.

unit

Target Unit

The character unit to look at.

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This constraint reorients the character’s head (and optionally its torso) so that it looks at another character (head tracking). You can enable limits to prevent unrealistic postures.

We recommend that you pin the character’s ankles to their initial FK transforms (using the Pin constraint) when using this constraint. Otherwise, you might see the feet drifting.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

boolean

Solve Head

Set to true to update the head.

boolean

Solve Left Arm

Set to true to update the left arm.

boolean

Solve Left Foot

Set to true to update the left foot.

boolean

Solve Left Hand

Set to true to update the left hand.

boolean

Solve Left Leg

Set to true to update the left leg.

boolean

Solve Left Shoulder

Set to true to update the left shoulder.

boolean

Solve Right Arm

Set to true to update the right arm.

boolean

Solve Right Foot

Set to true to update the right foot.

boolean

Solve Right Hand

Set to true to update the right hand.

boolean

Solve Right Leg

Set to true to update the right leg.

boolean

Solve Right Shoulder

Set to true to update the right shoulder.

boolean

Solve Spine

Set to true to update the spine.

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

Partial solving enables you to specify which part of the character’s body should be updated by the solver (only the legs, for instance, or the neck, the spine, the right arm, …). By default, the solver solves all body parts. This is a convenient way to spare CPU time.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Constraint Id

The Id of the pin constraint (can be -1 if no tracking is required).

string

Effector

The effector type to which the constraint is applied.

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

boolean

In World Space

A boolean value of true to work in world space and a value of false to work in character space.

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This constraint locks a character effector (such as the wrist, ankle, head) to its current position and/or orientation. Use this constraint when you don’t want HumanIK to affect a specific transform.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Constraint Id

The Id of the position offset constraint.

vector3

Delta

A delta vector (displacement) for the position offset you want to apply.

string

Effector

The effector type to which the constraint is applied.

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

boolean

In World Space

A boolean to specify whether the constraint is working in world space (true value) or in local space (false value).

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This constraint adds a certain amount of either character space or world space translation to a character effector (such as the wrist, ankle, or head). For example, use this node to procedurally raise the position of your character’s hand a few centimeters above its FK position.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Constraint Id

The Id of the position reach constraint(can be -1 if no tracking is required).

string

Effector

The effector type to which the constraint is applied.

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

boolean

In World Space

A boolean to specify whether the constraint is working in world space (true value) or in local space (false value).

vector3

Position

The target position to reach.

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This constraint makes an effector (such as the wrist, ankle, or head) try to reach a target position in either world space or character space.

For example, use this node to make a character’s hand reach an object on a table. Depending on the pull value associated to the effector, either only the character arm will move (pull = 0) or the full body might move (pull > 0). Please refer to the HumanIK Add Pull constraint to set the pull value for an effector.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

string

Property

The property to set the value.

Accepted values: HIKForceActorSpaceId HIKScaleCompensationId HIKMassCenterCompensationId HIKAnkleHeightCompensationId HIKAnkleProximityCompensationId HIKHipsHeightCompensationId HIKReachActorLeftAnkleId HIKReachActorRightAnkleId HIKReachActorChestId HIKReachActorLeftWristId HIKReachActorRightWristId HIKReachActorLeftKneeId HIKReachActorRightKneeId HIKReachActorHeadId HIKReachActorLeftElbowId HIKReachActorRightElbowId HIKReachActorLeftAnkleRotationId HIKReachActorRightAnkleRotationId HIKReachActorHeadRotationId HIKReachActorLeftWristRotationId HIKReachActorRightWristRotationId HIKReachActorLeftFingerBaseId HIKReachActorRightFingerBaseId HIKReachActorLeftToesBaseId HIKReachActorRightToesBaseId HIKReachActorLeftFingerBaseRotationId HIKReachActorRightFingerBaseRotationId HIKReachActorLeftToesBaseRotationId HIKReachActorRightToesBaseRotationId HIKReachActorChestRotationId HIKReachActorLowerChestRotationId HIKReachActorLeftHandThumbId HIKReachActorLeftHandIndexId HIKReachActorLeftHandMiddleId HIKReachActorLeftHandRingId HIKReachActorLeftHandPinkyId HIKReachActorLeftHandExtraFingerId HIKReachActorRightHandThumbId HIKReachActorRightHandIndexId HIKReachActorRightHandMiddleId HIKReachActorRightHandRingId HIKReachActorRightHandPinkyId HIKReachActorRightHandExtraFingerId HIKReachActorLeftFootThumbId HIKReachActorLeftFootIndexId HIKReachActorLeftFootMiddleId HIKReachActorLeftFootRingId HIKReachActorLeftFootPinkyId HIKReachActorLeftFootExtraFingerId HIKReachActorRightFootThumbId HIKReachActorRightFootIndexId HIKReachActorRightFootMiddleId HIKReachActorRightFootRingId HIKReachActorRightFootPinkyId HIKReachActorRightFootExtraFingerId HIKCtrlPullLeftFootId HIKCtrlPullRightFootId HIKCtrlPullLeftHandId HIKCtrlPullRightHandId HIKCtrlPullHeadId HIKCtrlPullLeftToeBaseId HIKCtrlPullLeftKneeId HIKCtrlPullRightToeBaseId HIKCtrlPullRightKneeId HIKCtrlPullLeftFingerBaseId HIKCtrlPullLeftElbowId HIKCtrlPullRightFingerBaseId HIKCtrlPullRightElbowId HIKCtrlChestPullLeftHandId HIKCtrlChestPullRightHandId HIKCtrlResistHipsPositionId HIKCtrlEnforceGravityId HIKCtrlResistHipsOrientationId HIKCtrlResistChestPositionId HIKCtrlResistChestOrientationId HIKCtrlResistLeftCollarId HIKCtrlResistRightCollarId HIKCtrlResistLeftKneeId HIKCtrlResistRightKneeId HIKCtrlResistLeftElbowId HIKCtrlResistRightElbowId HIKCtrlSpineStiffnessId HIKReachActorLeftShoulderId HIKReachActorRightShoulderId HIKFingerPropagationId

unit

Unit

The character unit.

float

Value

The value to set.

event

In

This event triggers the evaluation of this node.

These properties can be set to fine tune character retargeting. Please refer to the HumanIK SDK documentation to learn more about these properties and their effects.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

string

Property

The property to set the value.

Accepted values: HIKFootFloorContactId HIKFootBottomToAnkleId HIKFootBackToAnkleId HIKFootMiddleToAnkleId HIKFootFrontToMiddleId HIKFootInToAnkleId HIKFootOutToAnkleId HIKHandFloorContactId HIKHandBottomToWristId HIKHandBackToWristId HIKHandMiddleToWristId HIKHandFrontToMiddleId HIKHandInToWristId HIKHandOutToWristId HIKHandContactTypeId HIKHandFingerContactId HIKHandFingerContactModeId HIKFootContactTypeId HIKFootFingerContactId HIKFootFingerContactModeId HIKLeftUpLegRollId HIKLeftLegRollId HIKRightUpLegRollId HIKRightLegRollId HIKLeftArmRollId HIKLeftForeArmRollId HIKRightArmRollId HIKRightForeArmRollId HIKMirrorId HIKLeftKneeKillPitchId HIKRightKneeKillPitchId HIKLeftElbowKillPitchId HIKRightElbowKillPitchId HIKHipsTOffsetXId HIKHipsTOffsetYId HIKHipsTOffsetZId HIKChestTOffsetXId HIKChestTOffsetYId HIKChestTOffsetZId HIKFootAutomaticToesId HIKFootFloorPivotId HIKPostureId HIKHandAutomaticFingersId HIKHandFloorPivotId HIKCtrlNeckStiffnessId HIKHipsTranslationModeId HIKFingerSolvingId HIKFootContactStiffnessId HIKCtrlResistMaximumExtensionLeftKnee HIKCtrlResistMaximumExtensionRightKnee HIKCtrlResistMaximumExtensionLeftElbow HIKCtrlResistMaximumExtensionRightElbow HIKCtrlResistCompressionFactorLeftKnee HIKCtrlResistCompressionFactorRightKnee HIKCtrlResistCompressionFactorLeftElbow HIKCtrlResistCompressionFactorRightElbow HIKHandFingerContactRollStiffness HIKFootFingerContactRollStiffness HIKHandContactStiffness HIKRollExtractionMode HIKPullIterationCount HIKLeftHandThumbTip HIKLeftHandIndexTip HIKLeftHandMiddleTip HIKLeftHandRingTip HIKLeftHandPinkyTip HIKLeftHandExtraFingerTip HIKRightHandThumbTip HIKRightHandIndexTip HIKRightHandMiddleTip HIKRightHandRingTip HIKRightHandPinkyTip HIKRightHandExtraFingerTip HIKLeftFootThumbTip HIKLeftFootIndexTip HIKLeftFootMiddleTip HIKLeftFootRingTip HIKLeftFootPinkyTip HIKLeftFootExtraFingerTip HIKRightFootThumbTip HIKRightFootIndexTip HIKRightFootMiddleTip HIKRightFootRingTip HIKRightFootPinkyTip HIKRightFootExtraFingerTip HIKRealisticShoulder HIKLeftLegMaxExtensionAngle HIKRightLegMaxExtensionAngle HIKLeftArmMaxExtensionAngle HIKRightArmMaxExtensionAngle HIKExtraCollarRatioId HIKCollarStiffnessX HIKCollarStiffnessY HIKCollarStiffnessZ HIKRealisticLeftKneeSolvingId HIKRealisticRightKneeSolvingId HIKStretchStartArmsAndLegs HIKStretchStopArmsAndLegs HIKSnSScaleArmsAndLegs HIKSnSReachLeftWrist HIKSnSReachRightWrist HIKSnSReachLeftAnkle HIKSnSReachRightAnkle HIKSnSScaleSpine HIKSnSScaleSpineChildren HIKSnSReachChestEnd HIKSnSScaleNeck HIKSnSReachHead HIKLeftUpLegRollExId HIKLeftLegRollExId HIKRightUpLegRollExId HIKRightLegRollExId HIKLeftArmRollExId HIKLeftForeArmRollExId HIKRightArmRollExId HIKRightForeArmRollExId HIKTopSpineCorrectionId HIKLowerSpineCorrectionId HIKSnSSmoothReach HIKLockXId HIKLockYId HIKLockZId HIKRealisticArmSolvingId

unit

Unit

The character unit.

float

Value

The value to set.

event

In

This event triggers the evaluation of this node.

These properties can be set to fine tune character solving. Please refer to the HumanIK SDK documentation to learn more about these properties and their effects.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Constraint Id

The Id of the pull constraint(can be -1 if no tracking is required).

string

Effector

The effector type to which the constraint is applied.

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This constraint defines the pull intensity for an effector (such as the wrist, ankle, or head). When pull is disabled (0) the solver only computes body part IK (updating all joints of an arm, for instance). When pull is enabled (>0) the solver applies full body IK, so all joints in the character skeleton can be affected by the pulling effector.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Constraint Id

The Id of the relative pin constraint.

string

Effector

The effector type to which you want to apply the constraint.

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

float

Follow Rotation

The rotation factor.

float

Follow Translation

The translation factor.

float

Pin To Object

The unit object node index.

unit

Pin To Unit

The unit to pin the constraint.

float

Pull Body

The pull factor.

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

Relative pin locks a character effector (hand, hips, floor, …) on an external unit transform. For instance, you can lock the character’s hands on a mounted gun using this constraint; the hands will automatically move when the mounted gun moves.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Constraint Id

The Id of the resist constraint(can be -1 if no tracking is required).

string

Effector

The effector type to which the constraint is applied.

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This constraint defines how much an effector tries to preserve its original FK rotation. For example, you can set this constraint on an elbow to preserve its initial bending while trying to reach a target position. Resist values are only taken into account during full body IK solving.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Angle

Angle (in degrees) for the rotation offset.

vector3

Axis

Axis for the rotation offset you want to apply.

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Constraint Id

The Id of the rotation offset constraint.

string

Effector

The effector type to which the constraint is applied.

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

boolean

In World Space

A boolean to specify whether the constraint is working in world space (true value) or in local space (false value).

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This constraint adds a certain amount of either character space or world space rotation to a character effector (such as the wrist, ankle, or head).

For example, use this node to procedurally rotate the head of your character. IK will then distribute the amount of rotation among the actual neck joints.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

float

Blend Alpha

The alpha value (strength/intensity) of the constraint (between 0.0 and 1.0).

float

Blend In Time

Time (in seconds) for the constraint to become fully active (to reach its alpha value).

float

Constraint Id

The Id of the rotation reach constraint(can be -1 if no tracking is required).

string

Effector

The Id of the effector to which the constraint is applied.

Accepted values: Hips Left Ankle Right Ankle Left Wrist Right Wrist Left Knee Right Knee Left Elbow Right Elbow Chest Origin Chest End Left Foot Right Foot Left Shoulder Right Shoulder Head Left Hip Right Hip Left Hand Right Hand

boolean

In World Space

A boolean to specify whether the constraint is working in world space (true value) or in local space (false value).

vector3

Rotation

The target orientation to reach (in euler angles).

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This constraint makes an effector (such as the wrist, ankle, or head) reach a target orientation in either world space or character space.

For example, use this node to make a character’s hand align to the orientation of a weapon.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes

Outputs

Out

event

This event is triggered when the node finishes its evaluation.

Inputs

unit

Unit

The character unit.

event

In

This event triggers the evaluation of this node.

This is necessary when implementing multi-pass solving strategies.

For instance, if the solving of a character’s hand depends on the solving of its other hand, you might need to solve the character for the independent hand first, then add a solver call, then solve the character for the dependent hand.

Available in Unit Flow Editor, Level Flow Editor, and External Flow Editor.

Script node definition in file: core/humanik/humanik.script_flow_nodes