Houdini 20.5 Nodes Geometry nodes

Hair Card Generate geometry node

Converts dense hair curves to a polygon card, keeping the style and shape of the groom.

Since 17.0

The polygon cards output by this operator require far less memory and less computational power to render and display than dense hair curves. This makes them suitable for realtime applications.

The operator assigns groups of nearby curves to clusters and generates polygon cards for each cluster, with the width and orientation matching the original curves.

Parameters

Geometry

Clustering

Use Custom Cluster Points

Use points from the third input as cluster centers.

Number Hair Cards

The number of hair cards to generate.

Seed

The seed value used to randomly distribute cluster centers.

Curve Cluster Location

The position along the curve that is used to compute cluster centers.

0.5 means that the position half-way along the curve is used to compute clusters.

Tip

Use higher values for hair style where only the tips of hairs are visible. This distributes clusters based on tip locations, better matching the visible part of the hair.

Orientation

Smooth Orientation

Averages the orientation across neighboring hair cards. Without this, the orientation can be somewhat erratic and vary wildly, which can create an undesirable look.

Iterations

The number of times to apply orientation smoothing.

Width

Width Method

The method of determining card width.

Specify Width

Manually specify a uniform width value.

Compute using Cluster Distribution

Compute card width based on the density of neighboring clusters. Sparser areas receive wider cards, such that the skin is always fully covered in cards.

Width

Manually specified width when Width Method is set to Specify Width.

Width Scale

Scale applied on top of the computed width when Width Method is set to Compute using Cluster Distribution.

Width Max

Card width is clamped to this maximum when Width Method is set to Compute using Cluster Distribution. This prevents very sparse areas from generating extremely wide cards.

Divisions

The number of polygons along the width of each card.

Bend Range

The amount by which the center of hair cards is bent outwards. This is a range of values, from which a value is picked at random for each card.

Width Ramp

Controls how cards taper towards the tip.

Length

Extra Length

Extend the length of cards by this amount.

Division Method

The method used to determine the number of polygons along the length of each card.

Uniform Segment Count

Manually set a segment count that is used for all cards.

Segment Length

Use the number of segments necessary to match the given segment length as closely as possible.

Refine

Use the refine SOP to create the number of polygons required to accurately represent the curvature of each card.

Uniform Divisions

The number of divisions to use when Division Method is set to Uniform Segment Count.

Segment Length

The segment length to aim for when Division Method is set to Segment Length.

Refinement

The refinement threshold to use when Division Method is set to Refine.

UV Generation

Generate UVs

Generate UV Coordinates for cards.

UV Method

Regular Layout

Lays out each card individually with scaling matching the world space scaling. Allows each hair card to be textured individually.

UV Reference Texture

Supply a texture with white rectangles representing hair texture strips.

The UVs of each card will be assigned to the rectangular area that most closely matches the card’s shape.

Reference Texture

The reference texture image to use with the UV Reference Texture method.

Trace Channel

The image channel in which the rectangular shapes are stored.

Packing Method

Single Tile

Fit all cards into a single tile.

Fixed Scale

Scale UV tiles by this fixed scale relative to world-space and distribute across however many tiles are required to fit all cards.

Padding

Number of pixels to pad UV islands with. Creates extra space around tiles.

Geometry nodes