Houdini 22.0 Nodes APEX nodes

geo::SpringPointAttribs

Applies a spring effect on point attributes of a geometry.

On this page
Since 22.0

Applies a spring effect on the given point attributes of a geometry. By default, the effect is applied on the given point attributes for all the primitives of the geometry.

You can also apply different spring effects on different primitives. To apply per-primitive effects, use the primitive attribute, effectattribute.

The geo ports of this node are in-place ports, which means the geometry is updated without creating a copy.

Inputs

*geo: Geometry Required

The input geometry to apply the effect to.

attributes: String

The point attribute(s) on the geometry to apply the effect to. Attribute names should be space-separated.

fps: Float

The number of frames per second. Used to calculate the effect values.

effectattribute: String

The primitive attribute that allows you to set different effect parameters for different primitives. This primitive attribute must be a dictionary that contains an entry with a “parms” key. The parms entry is itself a dictionary with the following effect parameter keys:

"parms":
{
    "spring_constant": <Float>,
    "mass": <Float>,
    "damping_constant": <Float>
}

If a primitive’s effectattribute is set to a valid parms dictionary, the dictionary values will override the input springconstant, mass, and dampingconstant values. For example, let’s say effectattribute is set to motiontrail_effect, and primitive 0 has the following motiontrail_effect attribute value:

"parms":
{
    "spring_constant": 100,
    "mass": 1
}

In this case, all the points of primitive 0 will use the above spring constant and mass values. Since the damping constant is not specified in the parms dictionary, its value will come from input port dampingconstant.

If this port is not set to a valid primitive attribute, the input springconstant, mass, and dampingconstant values will be applied to all the primitives of the input geometry.

springconstant: Float

Describes how strong the spring is. Larger spring constants produce higher frequency oscillations. See effectattribute for when this value is overridden.

mass: Float

The mass of the object on the end of the spring. A higher mass produces lower frequency oscillations, higher amplitudes, and is more resistant to damping. See effectattribute for when this value is overridden.

dampingconstant: Float

The amount of damping (resistance) applied to the spring action. Higher damping causes oscillations to die off more quickly. See effectattribute for when this value is overridden.

Outputs

*geo: Geometry

The geometry with effects applied.

See also

APEX nodes