Choose your operating system:
Windows
macOS
Linux
The Two Bone IK control applies an Inverse Kinematic (IK) solver to a 3-joint chain, such as the limbs of a character.
Below, a series of Two Bone IK controllers are used, along with Hand IK Retargeting to control how the character holds a weapon.
Variables (HandIKWeight) are used to drive the Joint Target Location properties on the controller for the hand_l and hand_r bones of our character. By adjusting the value we can determine how the character holds the weapon without having to hand-animate different poses based on different characters.
The AnimGraph node network is shown below which you can copy and paste into your own Animation Blueprint.
Based on your own setup, you may need to assign different joints and (or) animations.
The example used here can be further explored in the Animation map of the Content Examples project available from the Learn Tab of the Epic Games Launcher.
Two Bone IK Properties
The following properties are available within the Details panel for the Two Bone IK node:
Property |
Description |
||||||||
---|---|---|---|---|---|---|---|---|---|
IK |
|||||||||
IK Bone |
Name of the bone to apply the IK solver to. This should be the bone at the end of the bone chain, i.e. the ankle or wrist bone. |
||||||||
Stretch Limits |
|||||||||
X |
The ratio of the Max Limb Length, which is used to determine when to scale the bones. |
||||||||
Y |
The maximum allowable amount of scaling of the translation component. |
||||||||
Allow Stretching |
If true, allows the bones to be stretched. |
||||||||
End Effector |
|||||||||
Effector Space Bone Name |
The name of the bone to use as the effector location when Effector Location Space is set to BCS_BoneSpace. |
||||||||
Take Rotation from Effector Space |
If enabled, the Rotation of the effector (component, parent, or bone) is applied to the IK Bone. |
||||||||
Maintain Effector Rel Rot |
This is overridden when Take Rotation from Effector Space is enabled. |
||||||||
Effector Location Space |
The reference frame for the Effector Location.
|
||||||||
Joint Target |
|||||||||
Joint Target Location Space |
The reference frame for the Joint Target Location.
|
||||||||
Joint Target Space Bone Name |
The name of the bone to use as the joint target location when Joint Target Location Space is set to BCS_BoneSpace. |
The following pins are exposed by default on the Two Bone IK node:
Pin |
Description |
|
---|---|---|
Input Pins |
||
Effector Location |
A Vector specifying the location effector in the Effector Location Space. |
|
Joint Target Location |
A Vector specifying the location joint target in the Joint Target Location Space. |