I K
Description
Configure inverse kinematics chains, joint limits and physics bones. Changes are saved with the model.
Chain settings (enabled, alwaysactive, lockrotation, weight, blendticks) are read from the bone that controls
the chain:
- the null object of a Blockbench IK chain,
- the tip bone of a chain made with IKChain,
- the last link of a
jigchain.
Joint limits and physics settings apply to the bone they are set on.
Attributes
| Attribute | Aliases | Description | Type | Default |
|---|---|---|---|---|
| modelid | m, mid, model | Targeted model | String | |
| partid | p, pid, part | Targeted bone. If not set, configures every IK bone of the model, including jig bones |
String | |
| enabled | e, en | Turns the chain on or off. If not set, use the last value |
Boolean | |
| alwaysactive | a, always | Keeps a Blockbench IK chain active even when no playing animation moves its null object. If not set, use the last value |
Boolean | |
| lockrotation | l, lock | Keeps the animated rotation of the chain's tip bone, like Blockbench's "Lock IK Target Rotation". If not set, use the last value |
Boolean | |
| weight | w | How much the chain overrides the animation, from 0 to 1.1 by default.If not set, use the last value |
Float | |
| blendticks | bt, blend | Ticks taken to blend to or away from a target set by IKTarget.5 by default.If not set, use the last value |
Integer | |
| limits | lim, limit | Set to false to remove the joint limits of the bone |
Boolean | |
| minx | The minimum rotation of the joint on the X axis, in Blockbench degrees | Float | ||
| maxx | The maximum rotation of the joint on the X axis, in Blockbench degrees | Float | ||
| miny | The minimum rotation of the joint on the Y axis, in Blockbench degrees | Float | ||
| maxy | The maximum rotation of the joint on the Y axis, in Blockbench degrees | Float | ||
| minz | The minimum rotation of the joint on the Z axis, in Blockbench degrees | Float | ||
| maxz | The maximum rotation of the joint on the Z axis, in Blockbench degrees | Float | ||
| stiffness | stiff | Physics: how fast a jig bone returns to its animated pose, from 0.01 to 1.If not set, use the last value |
Float | |
| damping | damp | Physics: how fast a jig bone stops swinging, from 0.01 to 1.If not set, use the last value |
Float | |
| gravity | grav | Physics: gravity on a jig bone, in blocks per second squared.If not set, use the last value |
Float | |
| maxangle | angle | Physics: how far a jig bone can swing away from its animated pose in any direction, in degrees, from 0 to 180. Per-axis limits from the tag still apply.If not set, use the last value |
Float | |
| repeatjig | Physics: how many links a repeated jig bone becomes, see Repeating a link. Not named repeat because that is the universal mechanic attribute that repeats the whole mechanic.If not set, use the last value |
Integer | ||
| repeatjigat | Physics: where a repeated jig bone gains or loses links when repeatjig changes. end changes the far end of the chain all at once. start adds or removes one link per tick where the chain hangs from, so the far end and anything tied to it stay where they are, like reeling a rope in or out.end by default.If not set, use the last value |
String | ||
| exactmatch | em, exact, match | Should the part match the partid completely |
Boolean | true |
Unset joint limit axes keep their current value. If the bone had no limits yet, they are free.
Examples
Let the arm only follow its null object at half strength, and blend to new targets over 10 ticks:
Skills:
- ik{p=arm_target;w=0.5;bt=10} @self ~onSpawn
Stop a knee from bending backwards:
Skills:
- ik{p=knee;minx=0;maxx=140} @self ~onSpawn
Make a repeated rope 24 links long, for example while throwing it:
Skills:
- ik{p=rope_segment;repeatjig=24} @self
Reel the rope back in to 4 links from where it hangs, while its tied end stays on the target:
Skills:
- ik{p=rope_segment;repeatjig=4;repeatjigat=start} @self
Make every bone whose name contains rope heavier and looser:
Skills:
- ik{p=rope;em=false;grav=30;damp=0.05} @self ~onSpawn
Aliases
- inversekinematics