← Learn library

Character FX & Animation / Houdini & Procedural Workflows / Houdini

Houdini's Rigging Revolution | APEX IK

Channel: CGI Nerd ·

Written guide

Original CGI Nerd video thumbnail
Houdini's Rigging Revolution | APEX IKCGI Nerd · Video hosted on YouTube

Playing loads YouTube content. YouTube processes data after activation.

Watch on YouTube

If the player is blocked or unavailable, use Watch on YouTube.

Software: Houdini

Add arm and leg IK components to the character’s existing APEX FK setup. The lesson uses the previously prepared joint tags, a guide skeleton and mirrored naming to locate the driven chains and their controls. Much of the work is diagnosis: a plausible-looking selector can still find nothing, and selecting a wrist control is not the same test as manipulating the intended IK handle.

This is an intermediate Rigging Revolution lesson. It assumes an existing character skeleton, guide joints, capture/deformation setup and working FK component. It does not construct those prerequisites. The exact Houdini build is unverified; the instructor describes the APEX documentation as incomplete at recording time. Current APEX AutoRig Component documentation describes a newer component interface, so its parameters should not be silently substituted for the historical UI shown here.

Add the arm component and match the character’s naming

At 00:00, append an APEX AutoRig Component to the FK setup and choose the component called Smooth IK in the recording. The instructor initially disables its smoothing option, using the component to establish an ordinary arm IK setup first.

Point its guide source to the existing guide skeleton. The recording emphasizes matching the source spelling, including the capitalized Guides portion and the skeleton name. Inspect the actual packed/source names in the scene; a nearly correct label is not a reliable reference.

At 01:03, inspect the joint names in the Geometry Spreadsheet. Their character prefix precedes an _L_ or _R_ side marker, with joint information afterward. Configure mirroring to recognize the left-side marker and replace it with its right-side counterpart, accommodating the surrounding name text. Enable Mirror: entering a replacement pattern alone does not apply the mirrored component.

Name the nodes for their responsibilities, such as full-body FK and arm IK. These labels help keep a copied leg component distinct later, when both its selectors and its control names must be changed.

Identify the driven chain and use a concrete pole-vector guide

At 02:01, the driven-joint selectors combine side, IK, arm and chain-role tags. Root, middle and end each need to resolve to the intended joint. The pole vector has a different job: it supplies the guide used to establish the limb’s bending direction rather than serving as another driven joint in the chain.

At 03:02, the instructor tries to select that pole-vector guide through its tags, including the capitalized PV tag. The existing tags contain quoting from earlier authoring. The initial unquoted expressions fail, and adding the expected quotes changes which joints are found. Inspect the actual stored tags and the resulting selection, not just whether the text looks reasonable.

Correcting the driven selectors does not resolve every problem. At 06:00, the instructor verifies that the pole-vector guide has the intended tags, yet the component still does not find it. Around 07:00, the demonstrated workaround is to reference that guide by its joint name instead. For the arm, use the existing elbow guide. The pole-vector controls then appear on both sides.

This is a result from the recorded component and scene. It is not evidence that tags are universally unsupported for pole vectors in all APEX versions. The captions also do not preserve a complete, trustworthy character-specific selector string. Use the spreadsheet to obtain the real name and retain any existing expressions needed to keep it procedural.

Check all three results before continuing: the intended driven chain is selected, the mirrored chain uses the opposite side, and each pole-vector guide comes from the correct limb. A skeleton jump after changing a selector is a reason to inspect those matches immediately.

Copy the setup to the legs and replace every arm reference

At 08:02, duplicate the arm IK component for the legs. Change the component label, the limb-related driven tags, the control naming and the pole-vector reference. The source briefly has a leg component still connected to an arm control; changing only the driven joints is therefore insufficient.

Use the existing knee guide for the leg pole vector. Once the selections resolve, inspect both sides in the rig’s control view. The recording now has many controls, so verify the selected handle’s identity before judging the limb motion.

At 09:03, a leg exhibits an unexpected rotation. The instructor suspects twist joints and temporarily disconnects their construction branches, then undoes those disconnections. Removing twist joints is an abandoned diagnostic experiment here, not the final solution and not a recommended prerequisite for this component.

Return to the established skeleton after such a test. Otherwise a later improvement could come from a changed skeleton rather than the selector correction you intended to evaluate.

Fix the selector typo before interpreting axis experiments

At 12:04, the instructor pauses to investigate the bending problem. On returning, the identified error is a semicolon where a quote was intended in a left-side selector. A similar correction is made for the leg. This explains why a selector could look close to the intended expression while failing to address the required joints correctly.

Retest the chain after that correction. Move the IK control and then the pole-vector control, watching the limb and confirming which control is selected. The instructor also toggles Smooth IK and ultimately keeps smoothing off for the demonstrated arm setup.

Around 13:02, X and Z are compared for Main Axis. The instructor is uncertain whether the parameter describes a bend-plane direction or a joint’s longitudinal orientation. At 14:03, a documentation search does not resolve that question, and X is retained because the tested setup appears to work.

That retained setting is an observed choice, not a demonstrated general axis rule. The article cannot establish the correct axis for another character from these experiments alone. A broader technical review should inspect that character’s joint orientations and the documentation for the component version actually in use.

Separate a working component from a finished animator interface

At 15:03, overlapping FK, wrist and IK controls make testing ambiguous. The instructor explicitly notices selection of the wrist when the IK control was intended. There is also a small shift attributed to imperfect alignment, which is acknowledged rather than cleaned up in this lesson.

The source experiments with Scene Animate and deformation ordering, but the spoken sequence does not provide a complete final wiring diagram. It does show subsequent bending tests and a remaining interface problem: some pole-vector controls available in the rig view are not accessible as expected in Scene Animate.

At 17:03, custom control shapes and improved access are deferred to the next lesson. The useful handoff is therefore narrower than a finished production rig: arm and leg IK components have been added and tested in limited poses, mirrored references have been corrected, and the selector typo has been fixed. Control overlap, Scene Animate accessibility, the axis explanation and broader pose validation remain explicit review items.

When revisiting this setup, check data selection first, component motion second and animator access third. That order follows the actual causes found in the recording and avoids treating every unexpected result as an IK solver problem.