0% found this document useful (0 votes)
685 views

Houdini: Rigging Guide

This document provides an introduction and overview of rigging techniques in Houdini, including details about skeletal systems, inverse kinematics, skinning, and using Python for rigging. References are also provided for additional learning resources on rigging basics, deformation systems, and specific tools in Houdini and other software. The author aims to help beginners learn the essential concepts and workflows for character rigging through this guide.

Uploaded by

Ahmad Tantawy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
0% found this document useful (0 votes)
685 views

Houdini: Rigging Guide

This document provides an introduction and overview of rigging techniques in Houdini, including details about skeletal systems, inverse kinematics, skinning, and using Python for rigging. References are also provided for additional learning resources on rigging basics, deformation systems, and specific tools in Houdini and other software. The author aims to help beginners learn the essential concepts and workflows for character rigging through this guide.

Uploaded by

Ahmad Tantawy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
You are on page 1/ 36

HOUDINI

RIGGING GUIDE
BY BENJAMIN YDE

Houdini Dynamics Guide By Benjamin Yde 1


Houdini Rigging Guide By Benjamin Yde 2

ABOUT
This document is made arround begin Februari 2020.

Discord: Benjamin Yde #8555

Houdini Rigging Guide By Benjamin Yde 2


Houdini Rigging Guide By Benjamin Yde 3

SUMMARY
ABOUT ........................................................................................................................................... 2
SUMMARY...................................................................................................................................... 3
LEARN ............................................................................................................................................ 4
RIGGING BASICS ............................................................................................................................. 5
WHAT IS RIGGING .............................................................................................................................5
RIGGING IN GAMES VS FILM .............................................................................................................5
RIGGING WORKFLOW .......................................................................................................................6
DEFORMATION SYSTEMS ..................................................................................................................7
THINGS YOU NEED TO KNOW BEFORE STARTING ...........................................................................11
RIGGING IN HOUDINI .................................................................................................................... 15
SKELETAL SYSTEMS .........................................................................................................................15
INVERSE KINEMATICS ......................................................................................................................20
BLENDING BETWEEN IK AND FK ......................................................................................................26
SKINNING/CAPTURING ....................................................................................................................27
PYTHON ..........................................................................................................................................32
REFERENCES ................................................................................................................................. 36

Houdini Rigging Guide By Benjamin Yde 3


Houdini Rigging Guide By Benjamin Yde 4

LEARN
About: Rigging Autodesk https://www.autodesk.com/autodesk-university/class/Film-
Versus-Game-Rigging-2012#presentation

About: article creative bloq https://www.creativebloq.com/features/3d-rigging-all-you-need-


to-know-to-get-started

Maya rigging wiki https://sites.google.com/site/mayariggingwiki/rigging-notes

3d total – introduction to https://3dtotal.com/tutorials/t/maya-rigging-introduction-to-


rigging series rigging-jahirul-amin-animation-character-vehicle#article-before-
jumping-in-and-creating-joints-left-right-and-center-lets-take-a-
step-back-and-look-at-some-of-the-main-tools-used-in-the-
rigging-process

Rigging Realistic Skin https://pdfs.semanticscholar.org/0d18/6750804-


Deformation with Muscle 285d76ffd33f65e72d775e35af21b.pdf
Systems Christian James
Sharpe

Houdini Rigging Guide By Benjamin Yde 4


Houdini Rigging Guide By Benjamin Yde 5

RIGGING BASICS
WHAT IS RIGGING
3D rigging is in effect the process of creating an invisible skeleton that defines how an object moves.
An animation or 3D rig usually comprises a system of ‘invisible’ objects that can be seen in a 3D
viewport but not in a final render.
At the most basic level, these objects are nulls/groups and joints.

Joints are objects that essentially act as the bones of the skeleton,
where the nulls/groups/ targets act as the cartilage to define the
range of movement. Nulls can also create controllers that are tied
to specific objects within a skeleton, to allow an artist to move and
control elements much more easily than actually trying to select
the specific points themselves.

When parented correctly, a joint and null system creates a logical


way of moving elements, and when this system is bound to an
organic mesh it can create a convincing range of movements. 3D
rigs can work just as well with hard-bodied systems such as cars,
where controllers can be an invaluable part of an animation setup.

Advantages of using a skeleton


 Simple
 Fast

Disadvantages of using a skeleton


 Weighted painting
 Can be hard to have fine control
 Not enough quality for film or vfx

RIGGING IN GAMES VS FILM


Games  Performance must be good for in game engine and build!
 Custom rigs for custum characters (unique rig) & shared rig (not unique rig) for
e.g. humanoid characters or common skeleton structures.
 Limited amount of
o blendshapes or morphs
o bone/joint count (keep a simple structure)

Film/vfx  Performance depends on the 3D editor


 No limited amount of
o bone/joint count
o blendshapes or morphs

Houdini Rigging Guide By Benjamin Yde 5


Houdini Rigging Guide By Benjamin Yde 6

RIGGING WORKFLOW
1 Analayse the model

 What parts of the model should move and how


 Try to draw the rig on top of the model in photoshop.
 How is the rig going to behave.
 Which control systems will you be needing.
 Use reference!
 Is the model of good quality?

2 Prototype different setups


 After we know you’re going to handle the rig, it can be
handy to try out the different setups in a second file.
 Isolate different parts/systems of the rig.

3 Compose the rig


 Merge all the systems together in a main rig.
 Create the main hierarchy.

4 Test
 Test everything and make sure it works.
 Try to break the rig.
 Are all contraints working?
 Make sure it’s ready so it can be used by the animators.

Houdini Rigging Guide By Benjamin Yde 6


Houdini Rigging Guide By Benjamin Yde 7

DEFORMATION SYSTEMS
Skeleton
An animation of a character or a mechanical object can be made with a skeletal mesh. The system
provides a way of transformation with use of a hierarchical bone-system which can be defined by
the user. Vertex positions follow the transforms of the assigned bone. It is possible to have
multiple bones assigned to a vertex, which will be blended via the help of a weight-system.

Advantages Disadvantages
 Simple  Weighted painting
 Fast  Can be hard to have fine control
 Not enough quality for film or vfx
 Can be time-consuming
 Limited amount of bones

Morphing
Morphing is a technique where vertex positions of a mesh are being blended from a source to a
destination position. Morph target or blend shapes are synonyms that can be used for this
technique. It can be used to animate the face of a character to represent a certain expression. To
move one expression to another, one or more parameters have be to blended. Everything is
precalculated and thus not dynamic. No vertices are skinned to obtain this result.

Advantages Disadvantages
 More control over the mesh because the  Takes a while when everything is modelled.
pose can be chosen.  Everything is pre-calculated and thus less
 Easy to use in a 3D-program. dynamic.
 Easy to change parameters.  Heavy performance because the whole
mesh needs to be recalculated.
 When rendering, distortion can happen due
to linear movement.
 Each pose needs to be morphed apart

Houdini Rigging Guide By Benjamin Yde 7


Houdini Rigging Guide By Benjamin Yde 8

Cage Deformer
Cage Deforming is an intuitive animation tool that allows you to freely edit the mesh deformation
of your object by wrapping with low-resolution geometry called Cage. The object is deformed
along with the cage when you edit the cage. With cage editing tool, you can easily and dynamically
edit the cage by grabbing, stretching, rotating, twisting, distorting. Cage Deformer is very useful
for various purposes, such as correcting errors, secondary action, animation without any bones,
and more.

Advantages Disadvantages
 Detailed Control  Can make the rig complex
 Can add detail to specific area of the rig  Can be very slow
 Too expensive for game engines

Soft Body Dynamics


Soft bodies are dynamic particle-based simulations that are used for simulating deformable
objects like fat, clothing, fluids and ever car crashes. The mesh is divided into clusters, who are
connected to each other like a node-based system. The clusters keep transformation properties
with them like rotation and translation. They influence particles, who have skinned information of
verts, that are in the clusters. It can be compared with bones in a skeletal mesh. The more clusters
an object has, the more freedom there is to move the mesh. It is possible for clusters to form or
split into a group. Same as water it can split into multiple puddles. This is something that is not
possible with ordinary rigid bodies.

Advantages Disadvantages
 Very realistic and accurate in simulations  Can appear sloppy
 It has a lot of properties to modify the  Not standard in engines
object  Not easy to implement soft bodies
 Merging or splitting of particle groups

Houdini Rigging Guide By Benjamin Yde 8


Houdini Rigging Guide By Benjamin Yde 9

Displacement Shader
Shaders are written in code (HLSL, GLSL, Cg) or they can be made in a shader graph, a tool that
works with nodes. The most famous shader graph is the one of Unreal Engine. Shaders are
calculated on the GPU because parallel operations are much faster processed.

First of all, the vertex shader transforms all the vertices from objects space to the projection
space. Further there are more things that happen in here like skinning, displacement mapping and
light calculations (per vertex).

The geometry shader allows us to calculate more geometry on the mesh like fi fur or change the
geomerty by transforming the vertices. Tesselation is often used here.

The rasterizer takes care of the culling, clipping, rasterization, … In general, transferring an image
to pixels. Afterwards the pixel shader calculates the color of a pixel.

In Houdini, VEX is a high-performance expression language used in many places in Houdini, such as
writing shaders for displacement.

Advantages Disadvantages
 Displacement happens on the vertex  No shader graph in UE4
shader, which makes it much faster (GPU)
 Can write own displacement shader

Mesh Generation or Mesh Data Calulations


With procedural mesh deformation it is possible to modify the geometry of a given mesh at
runtime. This technique is useful for graphical effects (eg, stretching or squashing an object)
but can also be useful in level design and optimisation.

Advantages Disadvantages
 Coded  At runtime (must be performant)
 Can write own displacement  Need to iterate over a lot of vertices (cpu)
 At runtime

Houdini Rigging Guide By Benjamin Yde 9


Houdini Rigging Guide By Benjamin Yde 10

Muscle System
The muscular system is an organ system consisting of skeletal, smooth and cardiac muscles. It
permits movement of the body, maintains posture and circulates blood throughout the body.
Muscle objects populate the skeletal figure in the same manner that actual muscles are arranged.
Anatomy is used as a guide for analysis of the character form. When trying to accurately represent
an animal or human in a muscle simulation, an identical representation of the muscular system is
best. However, using muscles can be computationally expensive and many of the muscles in
smaller areas could cause binding errors.

Advantages Disadvantages
 Realistic  Complicated
 Allows for muscle dynamics  Time consuming setup
 Slow to compute
 Too expensive for game engines

Houdini Rigging Guide By Benjamin Yde 10


Houdini Rigging Guide By Benjamin Yde 11

THINGS YOU NEED TO KNOW BEFORE STARTING


Parenting And Hierarchies
The most basic relationship you can create is a parent-child relationship. If you translate the parent
object, the child will follow. The same goes for rotations and scaling. The benefits of simple parent-
child relationships are that the child object still has freedom to move around unlike using a Parent
Constraint.

Contraints
With parenting, you are taking an object or a node and directly popping it under another. Constraints
on the other hand, allow you to build relationships without changing the hierarchical structure of the
objects. Further to this, where parenting affects all the transformation channels in one hit,
constraints allow you to break the relationships down into smaller chunks. For example, you can
Point Constrain one object to another so only the translation of an object is affected. When an object
is constrained, you cannot manipulate the channels that are constrained as you can a parent-child
relationship. The object constrained will simply snap back to the leading object.

Joints
Okay, so now we come to the nuts and bolts of
rigging: joints. Like all other objects, joints
have a transform; they can be translated,
rotated and scaled. But joints are unique and
what makes them unique is the fact that they,
and only they, have orientation. It allows a
joint to orient along an axis. You'll notice this
when you have a chain of joints: each parent
joint will be orientated to aim at its child joint.
Joints are the basic building blocks or the rig
and are comparable with bones. This is in the
end exported to the engine.

Animation Controls / Control Curves


Control Curves Control curves are created by the rigger to assist
the animator in manipulating joints within the rig. Typically a rig
consists of many components that need to be manipulated to
move the character in the desired pose. This can be very
difficult to do without control curves because the animator
would need to hide the mesh to see the skeleton within the
character and try to determine which joint manipulates the
elbow, for example. Control curves are typically simple NURBS
curves placed outside of the character so the animator can
easily select the curve to position the character instead of the
actual joint.

Houdini Rigging Guide By Benjamin Yde 11


Houdini Rigging Guide By Benjamin Yde 12

IK And FK
Forward Kinematics FK (Forward Kinematics) Forward Kinematics means your character rig will
follow the hierarchal chain. This means more control over your chain, but
also means you'd need to position each joint in your chain independently
of each other. For example, with FK if you positioned the character’s hand
the rest of the arm wouldn't follow like it does with IK. Instead you would
need to position each joint independently, starting with the upper arm, the
elbow and then the wrist. This obviously takes more time than IK, but can
give the animator much more control of the poses. Most times riggers will
incorporate both FK and IK into the rig to meet the animator's needs.

Inverse Kinematics IK (Inverse Kinematics) Inverse Kinematics means that the child node
within your rig's hierarchy can influence the movement of its parents. For
ex ample, if you use IK for your character's arm you can position your
character’s hand and the rest of the arm chain will be calculated. This
allows the animator to animate independently of the chain’s hierarchy.
Because of this IK is great when needing to have a character's arm stay
planted on something. For example, pushing against a wall or swinging on
a bar.

Houdini Rigging Guide By Benjamin Yde 12


Houdini Rigging Guide By Benjamin Yde 13

Driven Keys / Parameters


Driven Keys To speed up the animation process for the animators, a rigging artist can utilize driven
keys when rigging a character. Driven keys allow you to use one control or object to drive multiple
different objects and attributes. In the example above we can use a driven key to control the fist
position for the hand, with just one single control. A driven key contains two parts: the driver and the
driven. The driver is the object in control of the animation. The driven is the objects and attributes
that are being controlled by the driver. Typically for regular keyframes an attribute has values keyed
to time in the time slider. For a driven key, the attribute has values keyed to the value of the driving
attributes. The driver can be another object, or in the case of the example image above it is a control
slider.

Weighted Painting
Weight Painting Weight painting is a vital step once the skeleton has been created. Even though the
bones are put into place, it doesn't mean the 3D model will be able to deform exactly how you want.
When a mesh is bound to the skeleton, the computer doesn't know how much influence each joint
should have over each vertex, so it averages the weight out based on the distance from the joint to
the mesh. Basically painting weights allows you to manually set how much influence a joint has on a
particular area of the model and correct the deformations on the 3D mesh. For example, if the leg
joint has too much influence on the model it might affect the torso area giving you unrealistic results.

Houdini Rigging Guide By Benjamin Yde 13


Houdini Rigging Guide By Benjamin Yde 14

Skinning Or Capturing
Skinning (= capturing) is the process of taking the joints or bones of the rig and binding them to the
actual 3D mesh. When the joints are bound to the 3D mesh it allows you to move the joints and the
mesh will follow. Without skinning the mesh to the joints the joints will have no influence on the
actual 3D model. Skinning can be a rigid bind (hard surface meshes = no deformation) or a soft
bind(organic meshes = deformation).

T-Pose Or A-Pose

Houdini Rigging Guide By Benjamin Yde 14


Houdini Rigging Guide By Benjamin Yde 15

RIGGING IN HOUDINI
SKELETAL SYSTEMS
Pre-Transforms
The pre-transform is like an invisible parent Null inside each object. The pre-transform can be
useful for setting a certain transform as the "rest" or "zero" state for that object. After that,
values you enter are relative to the pre-transform values. Connecting nodes are the same as
parenting. The child object inherits the transform of the parent and adds its local transform to it.
Object Netwerk Scene View Node Information

Modify Pre-Transform
Clean Transform
This sets the transform parameters to their
default values while maintaining the same
overall transform. Can be done seperatly (next
line).

Clean Translates/Rotates/Scales
This sets the parameter to default while
maintaining the same overall transform.

Extract Pre-transform
Keep Position When Parenting This removes the pre-transform by setting the
When the object is re-parented, maintain its translate, rotate, and scale parameters in order
current world position by changing the object’s to maintain the same overall transform. Note
transform parameters. that if there were shears in the pre-transform, it
can not be completely removed.
Child Compensation
When the object is being transformed, maintain Reset Pre-transform
the current world transforms of its children by This completely removes the pre-transform
changing their transform parameters. without changing any parameters. This will
change the overall transform of the object if
there are any non-default values in the
translate, rotate, and scale parameters.

Houdini Rigging Guide By Benjamin Yde 15


Houdini Rigging Guide By Benjamin Yde 16

Bones
Bones can be made manually by creating nodes called “Bone”or via the scene view and the shelf tool
named “Bones” in the shelf Rigging. Don’t forget to set the root of a bone structure when creating
them manually. Grey is manually placed, colored is placed via the shelf tools.

There is a difference when making bones


via the shelf tool or manually in the
network.

When creating it via the shelf tools, each


bone-node’s transforms is set to (0,0,0).
This includes a pre-transform.

Manual bones don’t have that when


being made. You need to set the pre-
transtform manually.

Each bone can be controlled in the


viewport after placing it. When selecing a
bone you can transfomt it via the
parameters or via the viewport when
using the rotator tool.

When rotating the children of the bone


will transform with it.

Houdini Rigging Guide By Benjamin Yde 16


Houdini Rigging Guide By Benjamin Yde 17

Bones vs Joints
Houdini operates on a bone based system, whereas Maya operates on a joints based system. Bone
based systems allow riggers to rotate bones around their parents and scale the length. Joint based
systems, on the other hand, allow riggers to move joint orientations liberally in space.

In Maya you have joints where the equivalent in Houdini would be a null object with a look-at object
specified as the Aim constraint (don’t rig this way). You can clearly see the underlying difference
when you draw a bone chain in Houdini in the Bone state tool and then import a Maya rig via FBX.
The imported FBX rig will have the null-joint arrangement that you get in Maya. It is not recommend
that you rig this way in Houdini.

Joint based systems provide the flexibility and control of being able to move joints freely; however,
improper joint orientations often produce unwanted artifacts which require post-processing. Bones,
on the other hand, have an orientation. They always point down the -z axis, while up is the y
dimension and x is the flat dimension. Bone hierarchies can also understand the whole bone chain,
which makes it easier to squash and stretch rigs with bones.

Although Houdini operates on a bone based system, you can simulate joint based systems with null
nodes and bones filled in between them. However, for every joint, you will need an IK Solver
constrained to the next null.

Simulating joint based systems in Houdini


1. Create 2 null nodes and a bone node
2. Wire them both into null 1
3. Open the transform tab in the bone node and set the lookat parameter to null2
4. On the bone tab of the bone node, use an expression for distance to the bone length parameter.

Houdini Rigging Guide By Benjamin Yde 17


Houdini Rigging Guide By Benjamin Yde 18

Control Objects
Creating A Control Object
Control objects can be made with a null-node. In the misc tab it is possible to
set the shape with extra settings to change the color or shape. Important is to
set a clear color or shape so the animator can use it easly. Mostly see-through
shapes like curves are used so most of the mesh is still visible . If the rig has a
symmetrical system, like for instance a right and left shoulder-elbow-wrist
setup, It’s recommened to use an oposide color, e.g. blue&orange or
green&red. This gives a good contrast when using control objects.

Workflow Overview Forward Kinematics (FK)


1. Create the bone-system
2. Create the control object and give it a good color or shape
3. Child the control object to the bone you want it to have control over (Good position)
4. Set the transform order of the control object to Rz Ry Rx (legacy problem)
5. Check “Keep Position When Parenting” (maintain current world position when re-parent)
6. Change te parent of the control bone to the parent of the controlled bone (no double transform)
7. Clean the transform of the control object (setting pre-transform)
8. Set relative paths of the transform parameters you want to have control over from the control
object to the controlled bone. (transfering parameter values)
9. Lock the parameters in the controlled bone you don’t need to change (more security to the rig)

Houdini Rigging Guide By Benjamin Yde 18


Houdini Rigging Guide By Benjamin Yde 19

Step 4 Explained: Rotation Order Problem


If you have done rigging before you may have heard of the rotation order problem before. This is a
legacy problem in the IK solver of Houdini. The default rotation value for bones is set to Rz Ry Rx.
When you make a null node, you will see that the default rotation value is set to Rx Ry Rz. To make
sure all rotations are done as expected you need to change the default rotation value of the control
object/nullnode.

You may ask yourself why not change the default rotation value of the bone itself? You’ll never need
to think of the problem anymore. This will not solve the problem because when doing Inverse
Kinematics, the solver is based on Rz Ry Rx. The only solution is changing the order in the control
object/nullnode. That’s why the rotation order in the bones aren’t visible anymore in the
parameters. You can set them visible again when editing the parameter view, but I see no reason
why you would do that.

Step 6 Explained: Double Transform


To ensure a good orientation/transform of the control object you need to parent the bone to the
control object. The transform & orientation of the control object will be the same as the bone now.
Suppose you transfer the transform parameters to the bone now… you will encounter a problem.
When changing the rotation of the control object you will see that the bone will rotate correctly but
not the control object. The control object is transformed twice. Why?

1. Local control transform is applied to the control object.


2. The local transform is added to the bone.
3. Because the bone is parented to the control object it will add the transform to the control bone
resulting in a double transform.

Good Bad

or
or

Houdini Rigging Guide By Benjamin Yde 19


Houdini Rigging Guide By Benjamin Yde 20

INVERSE KINEMATICS
Basic Setup (manual and automatic)
To use inverse kinematics or simply IK in Houdini you will be in need of an chop (channel operator)
node called “inverse kin”. The node can be made in a custom chop network inside the obj network.
Every IK setup need an end affector point, root bone and end bone, which needs to be specified in
the solver. Every bone in the setup needs to be assigned a solver to as well so the IK system/solver
can do its thing.

An IK solver uses the rest angle to choose how the joint bends as the goal is moved. For example, you
can set the rest angle of the bones around an elbow joint to control which way the elbow bends.
When you create a bone, the rest angle is 0, 0, 0. (The actual angles are defined in the bone’s pre-
transform values.)

To set the rest position of an IK setup you can go to Edit > Objects > IK Rest Pose. This can be used to
let the IK bend in another direction/angle.

Houdini Rigging Guide By Benjamin Yde 20


Houdini Rigging Guide By Benjamin Yde 21

Automatic setup
Ofcourse it is possible to setup this system in a few clicks but it is important to know what is
hapenning and why. To setup an automatic system you can click on the “Bones”-tool in the shelf
tools under rigging. Before drawing the bones in the viewport you must select Inverse Kinematics or
else you will create normal bones.

Twist Affector
For the Inverse Kinematics solver, this
specifies an object that controls the twist
orientation of the solution bone angles. This
can be handy when getting the orientation of
an elbow right when using IK on an arm. The
affector can make orientations more
believable when using IK.

An extra rotation can be added to the affector


using the IK twist parameter in the IK solver.

Other Paramters
IK Dampening How easily the End Bone can be pulled off the End Affector as the bone
chain is stretched out.
Blend Blend between local bone rotation and IK.
Straighten Solution Will straighten the IK setup when the end affector is out of reach.
Tracking Treshold Specifies how accurate the IK will be performed.

Houdini Rigging Guide By Benjamin Yde 21


Houdini Rigging Guide By Benjamin Yde 22

FK Controlled With IK
Forward Kinematics can be done with control object that can be rotated as done before but also with
IK. The system behind this setup is the same setting up a basic IK system. When setup, each bone will
have its own IK solver. The “Bones”-tool in the shelf tools under rigging can help us with setting this
up very quickly.

Constraints
Contraints are transform attributes that can be influenced (position, rotation and scale). The settings
can be set in each bone in the bone tab. Constraints will only work when the solver type is set to “IK
with Constraints”. When using this setup, IK twisting will not be accessible anymore. More on that
later on.

Dampening Affects how quickly this bone’s angles can be changed.

Angle Range Specifies the minimum and maximum rotation angles that this bone can have in
each axis.

Damping Applies damping to the rotation of the bone when the rotation in each axis falls
Angle within the specified angle of its minimum or maximum value. The damping occurs
when the solved angle is within this angle value from the angle range.

Damping Specifies the rate at which damping increases as the rotation varies within the
Rolloff damping angle of the minimum or maximum angles. This can also be thought of as
the linear slope value at the damping angle region.

Dampening Value: 0.01 Dampening Value: 0.001 Dampening Value: 0.00025

Houdini Rigging Guide By Benjamin Yde 22


Houdini Rigging Guide By Benjamin Yde 23

The constraint shel footls is a common way to create constraints. A few examples:

Look At Will modify the orientation of an object to make it point at at target.

Follow Path Will position an object on a curve or path and orient it following the path
direction, picking up twist or other attributes from the path.

Blend Will blend the current object transform with other objects.

Parent Blend Will blend the transform of the current parent with other objects and apply
the current local object local transform on top.

Points Will position and orient the current object using point attributes from a SOP
node. It can also be used to get the closest point on geometry.

Surface Will position and orient the current object using interpolated surface
attributes from a SOP node. It can use UV space, parametric coordinates, or
closest distance to the geometry surface.

Blend Pose Will create a series of relationships between several objects, where target
objects will react to driver objects.

Linear Blending between IK’s


The following example does linear IK blending with use of a blend node inside the OBJ network. The
bones are setup using the bones shelf tool with use of simple IK.

Houdini Rigging Guide By Benjamin Yde 23


Houdini Rigging Guide By Benjamin Yde 24

Smooth Blending Between IK’s


The following examples do smooth IK blending with use of a chop node inside a chops network. The
bones are setup using the bones shelf tool with use of simple IK. To achieve smooth blending, a
system must be setup inside the chops network. The chops network needs at least 2 ik solvers per
control object/ end affector. 2 solvers will be blended to achieve a smooth effect. Don’t forget to set
the end affectors in each solvers.

Method 1: channel attributes Method 2: simple blend Method 3: math node

Change the blend value Combine chops: add


1 channel per ik solver

Blend with the multiply value

Houdini Rigging Guide By Benjamin Yde 24


Houdini Rigging Guide By Benjamin Yde 25

Limiting Rotational Data With Keep Of IK Twist


The limit-node in the chops network lets you limit certain rotational data of a bone without a need to
work with constraints. When using this technique it can be possible to have snappy bones when you
have set constraints. Therefore you can use the dampening parameter in the IK solver to smoothen
things out. The minimun and maximum values are working with the local rotation data, handy to
know.

Houdini Rigging Guide By Benjamin Yde 25


Houdini Rigging Guide By Benjamin Yde 26

BLENDING BETWEEN IK AND FK


Basic IK FK Blending
The most basic version of IK FK blending is by using the blend parameter in the IK solver. When set to
0 the setup will behave as IK, set to 1 will behave as IK. This can be easly tested with an IK setup via
the bones shelf tool. A HDA can be made to control the blending easly.

The Pose Tool


The Pose tool allows you to select multiple objects, and either show the object-specific handles for
each object, or use one global transformation handle to manipulate the selected objects. This tool is
useful, for example, when animating characters. But when using this tool you will see that it needs a
lot of different steps to achieve some things. It can be interesting to see this as an inspiration to
make your own tool.

The Pose tool can be accesed with the tab in the scene view and type pose or by clicking on the pose
tool icon on the shelf tools on the left. (little person with wires around it). There are 2 Handle Modes
in the tool, Object Specifiek Handles (work with ik) and Global Transform Handle (work with fk).

Imortant to know is that you need to select one of the bones if you want to change the mode. Won’t
doing this will result in the pose tool not working properly.

The Pose Handle


When you click on one of the bones you will see that a
line appears from the IK start to the IK end. This can be
used to blend between IK and FK. In order to change
the settings of the handle you must right click on the
pose handle. It is displayed as a very small purple box
right in the middle of the transform tool.

The blend handle lets you blend between IK and FK.

The Blend Handle Tool

Snapping Tool
With the snap tool you can snap the IK Pose
Handle to the FK end or the FK end to the IK Pose
Handle.

Houdini Rigging Guide By Benjamin Yde 26


Houdini Rigging Guide By Benjamin Yde 27

SKINNING/CAPTURING
Capture And Deform Regions
To bind surfaces to bones, you specify a 3D volume around the bone, inside which
the bone will "capture" surfaces. You will control the capture regions using
manipulators that define the volume in which the capturing will occur. The skeleton
and skin surfaces should overlap in 3D. The Capture Region volume is a tube with
hemispheres at each end. By adjusting the shape of the capture region, you can
affect how points are weighted by the Capture operation. The closer a point is to
the edge of a region, the lighter the weight. Thus you can increase point weighting
by increasing the size of the region.

Capture Region Deform Region


The capture region doesn’t move. It stays in its When bones are being transformed, the region
creation spot. The only way to make it move is follows, like it is parented. The geometry
via one of the shelf tools. When transforming deformation is the difference between the
one of the bones, the “capture region” moves capture region and the deform region.
with it and deformation takes place. When you
display the capture geometry (in the bones)
you’re looking at the deform region and not the
capture region because the capture region
never moves. It must be seen as a rest position.

The capture position (rest position/begin position) can be viewed via Edit > Objects > Capture Pose.

Houdini Rigging Guide By Benjamin Yde 27


Houdini Rigging Guide By Benjamin Yde 28

Basic Manual Workflow


1. Create the mesh Create a regular tube

2. Add the bones Add bones that overlap the mesh

3. Capture Capture it with the bones you just created. Check use capture pose &
color by capture region

4. Deform Rotate one of the bones and set a bone deform

Houdini Rigging Guide By Benjamin Yde 28


Houdini Rigging Guide By Benjamin Yde 29

Edit Capture Weights Tool


Individually modifies point capture weights using slider handles on bones or via a spreadsheet.
Shelf Tools > Rigging > Edit Capture Weights

Original Mesh Edit Capture Weight Tool

When u go back to the network you will see that the tool
automaticly added a capture override node.

The tool can be used on external geometry as well. Like you can
add a grid, select the points you want to deform with the tool
and set the weight with the sliders.

Houdini Rigging Guide By Benjamin Yde 29


Houdini Rigging Guide By Benjamin Yde 30

Paint Capture Layer Tool


Interactively changes bone or metaball capture weights by painting your geometry.

1. Click on on Shelf Tools > Rigging > Paint Capture Layer


2. Select the geometry to paint on and press enter
3. Ctrl + Middle Mouse Click on the bone to select the capture region
4. Drag the brush over the surface to paint

The tool will create a node called capturelayerpaint inside the network.

Original Geometry With Bones Painted With The Tool

Basic parameters like changing the radius can be adjusted at the top of the scene view

Right-Clicking in All the other


the scene view will parameters can
bring up some be found inside
other operations the parameter
that can be used to network of the
paint with. For capturelayerpaint
example you can node.
use the operation
“smooth final” to
smooth weights so
the deformation
will be less rigid.

Using multiple layers can be handy to have a good overview. A similar example is Photoshop.

If you want to smooth out these groups you can simply add a smooth
node and select the attribute boneCapture to smooth instead of the P
attribute.

Houdini Rigging Guide By Benjamin Yde 30


Houdini Rigging Guide By Benjamin Yde 31

Mirroring Capture Weights


Applies capture weights from one side of a geometry object to another. This tool saves you time
because you can mirror the capture weights of Bones and muscles on characters instead of creating
them twice.

1. Click on on Shelf Tools > Rigging > Mirror Capture Weights


2. Select the destination points (the mirror) and press enter
3. Select the source bones and press enter
4. Select the destination bones and press enter

If you do not get the desired results, you can specify the exact
bones or muscles to mirror to by clicking the Spreadsheet
button on the operation controls toolbar and choosing the
corresponding bones or muscles in the drop-down menu.

You can also choose the exact bones or muscles to mirror to


by changing the From and To values in the parameter editor.
The first item in the From list corresponds with the first item
in the To list and so on.

Houdini Rigging Guide By Benjamin Yde 31


Houdini Rigging Guide By Benjamin Yde 32

PYTHON
Auto FK System
Create a new shelf tool and add the following pictures to the script

Houdini Rigging Guide By Benjamin Yde 32


Houdini Rigging Guide By Benjamin Yde 33

Houdini Rigging Guide By Benjamin Yde 33


Houdini Rigging Guide By Benjamin Yde 34

FK To IK Matching

Houdini Rigging Guide By Benjamin Yde 34


Houdini Rigging Guide By Benjamin Yde 35

IK To FK Matching

Houdini Rigging Guide By Benjamin Yde 35


Houdini Rigging Guide By Benjamin Yde 36

REFERENCES
Plural Sight https://www.pluralsight.com/blog/film-games/key-rigging-terms-get-moving
Autodesk https://www.autodesk.com/autodesk-university/class/Film-Versus-Game-
Rigging-2012#presentation
3d total https://3dtotal.com/
SideFx https://www.sidefx.com/
Creative Bloq https://www.creativebloq.com/

Rigging for games – Eyal A

Houdini Rigging Guide By Benjamin Yde 36

You might also like