Deintersect Feathers Operator 

The Deintersect Feathers operator moves overlapping feathers apart so that they stack on top of each other instead of passing through each other. Each feather keeps its shape and its root: the operator only lifts and lowers parts of it along the surface normal.

 

What counts as a feather 

  • A strand together with the strands the Propagation Operator grew from it, its shaft and barbs. Operators placed between Propagation and Deintersect Feathers, such as Curl, Frizz or Change Width, do not break this grouping.
  • Any other strand is a feather of its own, a flat strip along the strand as wide as the strand width. Use this for plumage where every feather is one strand that is later turned into a feather mesh, as in the Mesh Plumage groom preset.
 

Which feather goes on top 

Feathers lie like roof shingles. For each feather the operator looks at its nearest neighbors: a neighbor rooted further back, against the direction the feather points in, lies on top of it, and a neighbor rooted further ahead lies underneath. Neighbors rooted beside the feather are ordered by the Side Layering parameter.

The surface normal at each feather's root decides which side is up, so the operator needs the distribution mesh the hair grows from.

 

Parameters 

  • Thickness - The distance kept between two stacked feathers, measured along the surface normal.
  • Feather Shape - Flat treats feathers as thin vanes. Cylindrical treats every feather as a tube around its shaft, as thick as the strand width or as far as its barbs reach, and stacks feathers by that thickness plus Thickness.
  • Iteration Count - How many times the feathers are measured against each other and moved. More iterations resolve deeper stacks and reach the full Thickness between feathers.
  • Neighbors > Search Radius - Feathers whose roots are closer than this distance, relative to the shaft length, are stacked against each other.
  • Neighbors > Maximum Count - The maximum number of nearest feathers each feather is stacked against.
  • Neighbors > Side Cone Angle - Neighbors rooted within this angle of the sideways direction are side neighbors.
  • Neighbors > Side Layering - Which of two side neighbors lies on top: the one on the left (Left On Top), the one on the right (Right On Top), or neither (Ignore).
  • Sampling > Shaft Sample Count - The number of rows along the shaft at which each feather is measured.
  • Sampling > Barb Sample Count - The number of points along the barbs, or across a single strand or cylindrical feather, at which each feather is measured.
  • Sampling > Search Distance - How far above and below a feather its neighbors are looked for, relative to the shaft length.
  • Sampling > Smoothing Iteration Count - How many times the measured movements are averaged across each feather.
 

Using the operator 

Add Deintersect Feathers to the stack above the operators that shape the feathers. For Propagation feathers that is above Propagation and the operators that style the barbs; for single-strand feathers that is before the operator that turns the strands into meshes. It is found in the Deformers category of the Add Operator menu.

Notes:
  • The default 5 iterations put overlapping feathers in the right order; raise Iteration Count when you need the full Thickness between them.
  • Cylindrical feathers on large, wide feathers are much slower than Flat ones.
  • Feathers rooted further apart than Search Radius are left as they are.
Missing Something? Let us know if this page needs more information about the topic.