Houdini 20.5 Character KineFX

fktransform

Creates an APEX graph node hierarchy using a guide skeleton.

Since 20.0
This feature is still under development. The current functionality is unfinished and subject to change, and may have thin or no documentation. Please bear this in mind when using it.

This component creates an APEX rig graph by translating the source skeleton into a rig hierarchy; it takes each of the skeleton joints and creates a TransformObject node in the rig graph. The TransformObject nodes can then be turned into controls that the user can interact with in the animate state.

For each TransformObject node that is created by this component, a mapping entry is added to the properties dictionary attribute on the node. This mapping entry contains the name of the reference skeleton and the joint that was used to create the node. For example, if skeleton in the Source tab is set to Guides.skel, the mapping entry will contain "mapping:Guides.skel":"pelvis". This mapping information is used later in rig components like ikfkblend to identify the relationship between FK and IK nodes in the rig.

See rigging a simple geometry and rigging a character for example uses of this component.

Parameters

guidesource

The guide skeleton that is used as a reference to create new TransformObject nodes in the graph.

shape

The shape of the FK controls. It can be set to any of the built-in APEX control shapes.

scale

The scale of the controls.

Settings

prefix

The prefix that is added to the name of the controls.

suffix

The suffix that is added to the name of the controls.

useskeletonpos

When turned on, positions the nodes in the graph based on the joint xform positions in world space.

skeletonposscale

When useskeletonpos is turned on, this scales the nodes in the graph.

usenodecolor

When turned on, sets the color of the skeleton joints (and their corresponding TransformObject nodes).

nodecolor

When usenodecolor is turned on, this is the color of the skeleton joints (and their corresponding TransformObject nodes).

usescaleinheritance

When turned on, sets the scaleinheritance of all the TransformObject nodes. The scale inheritance can also be set in the properties dictionary on the source skeleton.

scaleinheritance

userord

When turned on, sets the rotation order of the nodes globally.

rord

When userord is turned on, this is the rotation order of the nodes. The rotation order can also be set in the properties dictionary on the source skeleton.

usexord

When turned on, sets the transformation order of the nodes globally.

xord

When usexord is turned on, this is the transformation order of the nodes. The transformation order can also be set in the properties dictionary on the source skeleton.

useshapedata

When turned on, sets the shape data for the controls from the guide skeleton.

addpttransform

When turned on, adds a skel::SetPointTransforms node to the graph, and connects all the TransformObject nodes created from the source skeleton to this new skel::SetPointTransforms node. The TransformObject node names are used to set the skel::SetPointTransforms port names. To deform the skeleton, the skel::SetPointTransforms port names must match the skeleton joint names. See graphs for deforming geometry for more information.

pttransformname

When addpttransform is turned on, this is the name of the new skel::SetPointTransforms node.

outputskeleton

The name of the skeleton you want to modify. This is set as a port name on the graph input and output nodes.

tags

The tags that are added to the TransformObject nodes created by this component. Set to bind by default.

These tags are used for finding specific TransformObject nodes using the APEX path pattern syntax. For example, if tags is set to bind, a downstream rig component could use the APEX path pattern function %tag(bind) to find all the TransformObject nodes created by this component.

Source

skeleton

The reference skeleton used to create the node hierarchy.

jointgroup

The group of joints that TransformObject nodes are created for. By default, all the joints are included. Joint names are specified with the syntax, @name=<joint_name>.

add

When turned off, creates the controls for jointgroup in world space - for example, if you specify the head joint in jointgroup, the control will be positioned at the head joint of the character. This is the default setting.

When turned on, adds the controls for jointgroup to the existing node hierarchy - the new TransformObject nodes are added to the existing hierarchy based on the skeleton joint hierarchy. This is useful if you already have a node hierarchy, and want to add additional joints to your skeleton.

Controls

parmnodename

The name of the input parameters node in the rig.

outputnodename

The name of the output node in the rig.

tpromotegroup

Promotes the translate components of the specified TransformObject nodes. This parameter accepts APEX path patterns, so you can specify tags in this field, for example, %tag(<tag>).

rpromotegroup

Promotes the rotate components of the specified TransformObject nodes. This parameter accepts APEX path patterns, so you can specify tags in this field.

spromotegroup

Promotes the scale components of the specified TransformObject nodes. This parameter accepts APEX path patterns, so you can specify tags in this field.

See also

KineFX

Overview

Preparing character elements

Rigging with APEX graphs

Building rig graphs with APEX Script

Rigging with rig components

Animating in the viewport

SOP-based animation

Deformation

Animation retargeting

Pre-H20

Panes

Appendix