Houdini 22.0 Nodes APEX nodes

component::AddIkInverter

Adds a two-bone IK inverter node to a rig’s inversion graph.

On this page
Since 22.0

The inversion graph is used to drive controls back from a moving skeleton (for example, for inversion-based retargeting). This function handles pole vector placement and automatic stretch adjustment by baking rest lengths and control offsets from the bind-pose guides at build time.

The invert_graph ports of this node are in-place ports, which means the graph is updated without creating a copy.

Inputs

*invert_graph: ApexGraphHandle Required

The inversion graph to insert the inverter node into.

graph: ApexGraphHandle

The rig graph containing the IK controls and their config node.

guides: Geometry

The bind-skeleton geometry carrying guide and joint data used to compute rest positions, offsets, and parent-joint relationships.

segment: String

The tag identifying the IK segment. This is used to find the root, pole vector, and tip control nodes in the rig graph.

ik_root_tag: String

The secondary tag identifying the root control node. Defaults to ik_root.

ik_polevec_tag: String

The secondary tag identifying the pole vector control node. Defaults to ik_polevec.

ik_target_tag: String

The secondary tag identifying the tip/target control node. Defaults to ik_tip.

mapping_source: String

The guide-source name used to resolve the skeleton joint name from each control node’s properties. Defaults to Base.skel.

stretch_parm_name: String

The name of the promoted stretch parameter on the rig graph. If empty, it is automatically detected from the segment’s config node.

autoclav_parm_name: String

The name of the promoted auto-clavicle parameter. Left disconnected if empty.

usetwistrest_parm_name: String

The name of the promoted use-twist-rest parameter. This is automatically detected from the config node if stretch_parm_name is also empty. Otherwise left disconnected.

multiikdriven: ApexNodeIDArray

An optional array of graph nodes forming a multi-joint IK chain. When provided, the rest length is accumulated across all the joints and each joint is wired into the internal joint-chain array build node.

Outputs

*invert_graph: ApexGraphHandle

The modified inversion graph with the added IK inverter node.

See also

APEX nodes