Houdini 20.5 Nodes Geometry nodes

Rig Doctor geometry node

Optimizes and runs checks on a SOP skeleton.

On this page
Since 18.5

This node provides a convenient way of placing 'breakpoints' in your network after performing modifications to a skeleton’s topology (i.e. having added, removed or reparented joints), allowing you to take advantage of optimizations based on a constant skeleton topology and/or name attribute in your downstream network. A constant copy of the input skeleton is stored based on either a frame or a manually stashed copy, and attributes are transferred to this copy from the input.

Any attribute entered in the Attributes to Freeze parameter is not copied from the animation and remains constant on the output.

Parameters

Freeze Time Dependent Attributes

Method

Method of storing the input skeleton.

Stash

Manually stashes the input at the current frame.

Time Shift

Takes the topology from the input at the frame specified in Frame.

Frame

The frame at which to store the topology.

Stash Input

When Method is set to Stash, this button stashes the input topology at the current frame.

Attributes To Freeze

A list of attributes to freeze along with the skeleton’s topology.

Point Names

Initialize Missing Names

When turned on, finds any points with an empty name attribute and initializes the name using the Prefix specified. The prefix is appended by a number starting at 0 and increases for each missing name.

Prefix

The prefix used for initializing empty point names.

Sanitize Names

When turned on, this node checks through the point names, resolving any duplicates and names with spaces (any space in a point’s name is replaced with an underscore).

Store Input Name As

When turned on, stores the input name to the specified point string attribute.

Hierarchy

On Failure

Specifies how the node handles a failed traversal of the skeleton’s hierarchy.

Warning

Displays a node warning but still allows the geometry to pass through.

Error

Displays a node error and interrupts the cooking of the downstream network.

Debug Hierarchy

When turned on, attempts to traverse the input geometry as a SOP skeleton.

Output Parent Index

When turned on, outputs a parent_idx point attribute with its value set to the point number of a given point’s parent.

Output Child Indices

When turned on, outputs an integer array point attribute containing the point numbers of each point’s children.

Output Evaluation Order

When turned on, outputs an integer point attribute set to the order in which the point appears in the traversal.

Transformations

Initialize Transforms

When turned on, creates a 3@transform attribute on the points if missing, and initializes it to identity.

Convert Instance Attributes

When turned on, sets the 3@transform attribute based on other point instance attributes, as recognized by the Copy To Points SOP.

For orientation, p@orient is used if present. If p@orient is not present, the combination of v@N and v@up is used, setting the Z-axis of the transform to v@N, and the Y-axis to v@up. If none of the above are present, the orientations are set to identity.

For scales, v@scale is used if present. If v@scale is not present, the f@pscale is used. Otherwise the scales are set to identity.

Re-Orient To Child

When turned on, the node performs a simple reorienting of the points' transforms to point the vector specified by Vector To Child to the next joint in the chain. If the point has multiple children, the average position is used. Leaf joints use their parent position as the reference for the orientation.

Note

This action takes place after Convert Instance Attributes if Convert Instance Attributes is turned on.

Vector To Child

When Re-Orient To Child is turned on, this is the local space vector of the points' transforms that should point towards the given point’s child.

Visualize

Joint Axis Style

Sets the style of the axis display.

Gnomon

A simple gnomon guide.

Hats

A flattened cone per-axis that may be more visible in many situations.

Show Parent to Child

When turned on, displays a guide for each edge in the input geometry pointing from parent to child.

Joint Scale

Sets the scale of the guides.

Initialize Scale From Root

Runs a heuristic to determine and set the Joint Scale parameter based on the root joints scale and the size of the skeleton’s bounding box. This can be useful when working with imported skeletons that may have had their units converted.

Inputs

Poly Lines

The skeleton geometry whose topology has been modified upstream.

Outputs

Skeleton

A copy of the input skeleton with it’s topology 'frozen'.

See also

Geometry nodes