Houdini 20.5 Nodes Geometry nodes

Dem Bones Skinning Converter geometry node

Converts any non-changing topology deforming mesh sequence into a bone-based animation.

On this page
Since 19.5

Dem Bones - © Electronic Arts 2019

This node is an implementation of Smooth Skinning Decomposition with Rigid Bones, an automated algorithm that extracts the Linear Blend Skinning (LBS) with bone transformations from a set of example meshes.

Skinning decomposition can be used in various tasks:

Note

This node can only handle clean input data, for example, only one piece of connected geometry. If this node takes a really long time to process, it may have gotten stuck while trying to find a solution. To fix this, set the Min Non-Zero Weights parameter to 1.

Parameters

Save to Disk

Starts the skinning decomposition and exports the result to disk.

Output File

The path to save the FBX output.

Create Intermediate Directories

When turned on, creates the directories in the FBX output path if they do not exist.

Conversion Settings

Frame Range

Defines the frame range used for the skinning decomposition.

Bind Pose Frame

The frame to use as the bind pose (rest pose) for the output rig.

Create Root

When turned on, updates the bind pose to regroup joints under one root.

Bones

Max Number of Bones

The maximum number of bones that can be generated.

Note

Due to the possibility that more efficient solutions may be found during conversion, the actual output may be lower than the number specified by this parameter.

Solve Iterations

Global Iterations

The number of global iterations to process during the conversion. This functions as a scalar for the number of optimizations that have to be calculated. For more complex scenes, increase this value.

Error Tolerance

The algorithm keeps track of the decreasing errors during iterations, and increments a counter if the reduction is less than the threshold specified by this parameter. This allows the algorithm to stop optimizing early if no improvement is found after the number of iterations specified by the Patience parameter.

Patience

The number of iterations to wait before stopping early when no improvement is found that is incrementally better than the threshold specified by the Error Tolerance parameter.

Splitting Iterations

The number of clustering update iterations that are applied on initialization.

Transform Iterations

The number of bone transformation update iterations per global iteration. Dem Bones performs multiple bone transform updates after each update on the weights.

Soft Constraints

Translations Affinity

Activates a soft constraint that forces bone translation that follows the centroid of the patch supported by that bone. Values greater than 0 turn on the soft constraint, and values less than 0 turn off the soft constraint.

For many use cases, a value of 0 (no constraint) may be required. Whether or not to use higher values should depend on numerical stability and whether optimization can converge or not.

P-Norm

The power used to compute the centroid of the patch. Higher values move the centroid of the bones closer to the vertices with max weights (soft-max).

Weights

Weights Iterations

The number of weight updates to perform after each bone update. 1-5 iterations usually produce good results. These iterations are very expensive, so it is better to increase the Global Iterations than to increase the number of Weights Iterations.

Smoothness

Controls the weights smoothness for the generated soft constraint.

Step Size

The step size of the Implicit Laplacian smoothing on the weights for the soft constraint.

Min Non-Zero Weights

The number of non-zero weights per vertex required for the conversion to succeed.

Inputs

Animated geometry

The geometry you want to convert using skinning decomposition.

See also

Geometry nodes