←ALL OPERATORS
> simulations

Hair

simulations/hair·v1.5.1
IN:1  OUT:1

The Hair operator turns every strand of the input into a rod with a frame per segment, holding each segment at its rest length and each joint at its rest bend and twist, so curls and twists keep their shape. Each strand is solved from root to tip in sequence, and the output is the same strands with their points moved.

Roots are pinned by default and ride an animated scalp with Match Animation, while a grabber, per-point falloff attributes, normal and tangent drag, self collision and ground, box, mesh and field colliders shape the motion. The simulation runs as a feedback loop (Initialize, Start, Play) with a Target Feedback Loop POP for forces downstream.

PAGEHair
Target Feedback Loop POPTargetpopA reference to a POP node downstream in the network whose data is retrieved one frame later. P, PartVel and PartForce are read back.
Time ScaleTimescaleSpeed multiplier on the time step. 0 freezes and 2 doubles.
Time StepTimestepThe time step per frame in seconds, 1 divided by the cook rate (read-only). Time Scale multiplies it.
SubstepsSubstepsNumber of solver substeps per 1/60 second. More substeps are more stable.
IterationsIterationsNumber of constraint passes per substep.
Rebuild ConstraintsRebuildconstraintsRebuilds the constraints and rest state from the input.
Auto RebuildAutorebuildWhen on, the constraints are rebuilt every frame, for an animated input or changing topology.
Constraints BuiltConstraintsbuiltNumber of constraints made by the last build (read-only).
Build Time (ms)BuildtimeDuration of the last build in milliseconds (read-only).
Display ConstraintsDisplayconstraintsDisplay the constraints.
InitializeInitializepulseInitializes the POP from its input and parameters.
StartStartpulseStart the simulation from the initialized state.
PlayPlayPause or play the feedback loop.
StepSteppulseAdvance the simulation by one frame while paused.
PAGEConstraints
Point MassSetmassMass of every point when Mass is Set, in kg with 1 unit equal to 1 m.
DensityDensityMass per unit length when Mass is set to Density.
Set ThicknessSetthicknessContact radius of every point when Thickness is Set.
Segment Length ScaleSegmentlengthscaleSets the self-collision radius as a fraction of the mean segment length, used when Thickness is Segment Length.
StiffnessStretchstiffSets the stretch stiffness, multiplied by Stiffness Scale.
Stiffness AttributeStretchstiffattrPoint attribute that multiplies the stretch stiffness.
Damping RatioStretchdampSets the damping ratio, where 0 is no damping and 1 is critical damping.
Rest Length ScaleStretchrestscaleScales the rest length. Values below 1 shrink it and values above 1 grow it.
Rest Length AttributeStretchrestattrPoint attribute that scales the rest length.
Attribute RangeStretchattrrangeSets how many decades of stiffness the attribute spans in Logarithmic mode.
StiffnessBendstiffSets the bend stiffness, multiplied by Stiffness Scale.
Stiffness AttributeBendstiffattrPoint attribute that multiplies the bend stiffness.
Damping RatioBenddampSets the damping ratio, where 0 is no damping and 1 is critical damping.
Rest Angle ScaleBendrestscaleScales the rest angle. 0 makes the rest shape straight.
Rest Angle AttributeBendrestattrPoint attribute that scales the rest angle.
Attribute RangeBendattrrangeSets how many decades of stiffness the attribute spans in Logarithmic mode.
Pin First VertexPinrootsPin the first point of every strand so the hair grows from its root.
Pin Second VertexPinsecondAlso pin the second point. This fixes the root direction so the hair leaves the skin as combed.
Pin GroupPingroupPoint group of the input to pin.
Match AnimationMatchanimationWhen on, pinned points follow the live input. When off, they hold the rest pose.
Display PinsDisplaypinsDisplay the pinned points.
PAGECollisions
Enable Self CollisionEnableselfcollisionEnable collisions of the points with each other.
Collision PassesSelfcollisionpassesNumber of self-collision solves per substep.
StiffnessSelfstiffnessFraction of each self-collision correction that is applied, from 0 to 1.
Enable Ground CollisionEnablegroundcollisionCollide with an infinite ground plane.
Display GroundDisplaygroundDisplay the ground plane.
Ground Collision MarginGroundmarginDistance the points keep from the ground.
Enable Bounding Box CollisionEnablebboxcollisionKeep the points inside the bounding box.
Display Bounding BoxDisplaybboxEnable drawing the bounding box.
Lower BoundsBboxlowerboundsEnable the lower walls of the bounding box in each axis.
Upper BoundsBboxupperboundsEnable the upper walls of the bounding box per axis.
Bounding Box Collision MarginBboxmarginDistance the points keep from the box walls.
Bounding Box POPBboxOptional POP whose world bounds replace the built-in box.
Display GeometryDisplaygeoEnable drawing the collider, as the mesh or the field's zero surface.
Collision PassesGeocollisionpassesNumber of collider solves per substep. More passes hold fast moving geometry.
Collision POPCollisionpopThe collider, either a mesh POP or an SDF field volume.
SolidSolidWhen on, points inside the collider are pushed out. When off, the collider is hollow.
Keep InsideKeepinsideWhen on, the collider is hollow and every outside point is pulled back in. When off, only escaping points are caught.
ProjectProjectPlace every point on the collider surface instead of colliding.
Collision OffsetCollisionoffsetDistance the points keep from the collider surface.
Collision DampingCollisiondampingVelocity lost on contact. 0 bounces and 1 stops.
Uniform ScaleScaleSpecifies a uniform scale factor for the collider and the bounding box.
PAGEForces
Gravity MultiplierGravitymultiplierMultiplies the Gravity vector.
Wind SpeedWindspeedThe wind acceleration along Wind Direction, in units per second squared.
Velocity DampingVelocitydampingAmount of damping applied to the velocity. 0 applies no damping.
Normal DragNormaldragAir drag across the strand, per second.
Tangent DragTangentdragAir drag along the strand, per second.
Static ThresholdStaticthresholdSets the static friction coefficient. Contacts below it grip.
Dynamic ScaleDynamicscaleSets the kinetic friction coefficient that slows sliding contacts.
Enable SelfEnableselfEnable friction on the self-collision contacts.
Enable ExternalEnableexternalEnable friction on the bounding box, the Collision POP and fields. The ground always uses its own friction.
Ground Static ScaleGroundstaticscaleSets the static friction of the ground plane. 0 is frictionless.
Ground Dynamic ScaleGrounddynamicscaleSets the kinetic friction of the ground plane.
Enable GrabberEnablegrabberEnable the grabber: grab and drag the simulated points inside a sphere.
GrabGrabWhile on, the points inside the grabber when it turned on follow Position.
StrengthGrabstrengthDetermines how firmly the grabbed points follow. 1 holds them like pins, lower values let the simulation pull them.
Transition RangeTransitionrangeWidth of the falloff at the edge of the grabber sphere.
Transition AlignTransitionalignMoves the falloff inside (-0.5) or outside (0.5) the sphere edge.
Display GrabberDisplaygrabberDisplay the grabber sphere in the viewport.
Visualize Grabbed PointsVisgrabbedpointsColor the points the grabber holds (or would take) red.
PAGEAdvanced
Enable Max AccelerationEnablemaxaccLimit the acceleration to Max Acceleration.
Max AccelerationMaxaccelerationSets the maximum acceleration magnitude.
Limit Acceleration in Velocity UpdateLimitaccelWhen on, the acceleration limit applies to the velocity update instead of the position step.
Fallback to First Order Integration on CollisionFallbackcollisionUse first order integration on collision, which is more stable.
RelaxationRelaxationScales each constraint step. 1 is exact, below 1 is softer, above 1 is stiffer but jittery.
Self Step ClampSelfclampscaleLimits the move per substep to this fraction of the contact diameter, which prevents tunneling.
Rest Exclude ScaleRestexcludescaleSkips self-collision pairs that are closer at rest than this multiple of the contact distance.
PAGECommon
Free Extra GPU MemoryFreeextragpumemFree memory that has accumulated when output memory has grown and shrunk.
Input 0 POP - Geometry
Output 0 POP - Geometry