Flow Direction Modifier

The Flow Direction modifier controls which way hair flows across the surface. Think of it like combing hair - you're defining the direction strands point and how they lay against the scalp.

What is Flow Direction?

Flow Direction changes the orientation of hair strands without changing their length. It's like using a comb to style hair in different directions - forward, backward, parted, swirled, etc.

Visual effect: Hair flows in specific directions you define. Strands rotate and bend to follow your flow pattern.

When to use: Almost always! Natural hair has flow direction - forward on top of the head, downward on sides, swirled at the crown. Use this to create partings, swirls, styled looks, or natural flow patterns.

Two Flow Methods

FollicleFX gives you two ways to control flow direction:

Direction Arrows (Recommended)

Place arrows on the surface. Hair flows in the direction the arrows point. This is the most intuitive method - you literally point where you want hair to go.

Best for: Most use cases. Natural flow, partings, styled looks, precise control.

Flow Curves (Advanced)

Draw curves on the surface. Hair follows the curves using velocity field advection (Houdini-style). This is more advanced and creates flowing, advected motion.

Best for: Complex flowing patterns, artistic effects, Houdini-style workflows.

Tip: Start with Direction Arrows. They're easier to understand and work great for 95% of use cases.

Direction Arrows

Direction Arrows are the primary flow control method. You place arrows on the surface, and hair flows in the direction they point.

Editing Arrows

Click the "Edit Arrows" button to enter arrow editing mode.

Controls:

  • Click + Drag on surface = Add new arrow
  • Drag GREEN handle = Move arrow base position
  • Drag RED handle = Point arrow direction
  • DEL key = Delete selected arrow
  • Ctrl+Z = Undo last action
  • ESC = Exit editing mode

Workflow:

  1. Click "Edit Arrows"
  2. Click and drag on the surface to place arrows
  3. Adjust arrow directions by dragging the red handles
  4. Press ESC when done

Tip: Multiple arrows blend smoothly together using Gaussian falloff. Place arrows where you need flow control, and they'll blend naturally.

Mirror Controls

The Mirror section lets you work symmetrically.

Mirror Checkbox: Enable/disable arrow mirroring

Mirror Axis: Choose symmetry axis (X, Y, or Z)

  • X-axis: Left/right symmetry (most common for heads)
  • Y-axis: Front/back symmetry
  • Z-axis: Top/bottom symmetry

Detect Button: Auto-detect mesh symmetry axis

Workflow:

  1. Click "Detect" to find symmetry axis
  2. Check "Mirror" to enable
  3. Place arrows on one side - they automatically mirror to the other side

Tip: For character heads, use X-axis mirroring. Place arrows on one side of the head, and they mirror automatically.

Direction Control

The Direction Control section controls how arrows affect hair.

Strength

How much hair rotates toward arrow direction.

Range: 0.0 to 1.0 (Default: 1.0)

What it does:

  • 0.0 = No effect (arrows don't affect hair)
  • 0.5 = Partial rotation toward arrows
  • 1.0 = Full rotation toward arrow direction

When to adjust:

  • Usually leave at 1.0 for full control
  • Lower values for subtle flow influence
  • Use expressions for per-strand variation

Expression support: Yes

Example expression:

rand(0.7, 1.0, index)

Each strand gets random strength between 0.7-1.0 for natural variation.

Behavior

How arrows affect hair flow.

Options:

  1. Direct (Default) - Hair flows along arrow direction
  2. Repel - Hair flows away from arrow direction

What each mode does:

Direct (Default):

  • Hair points in the direction the arrow points
  • Use for: Normal flow control, styling, partings
  • Most common mode

Repel:

  • Hair flows away from the arrow direction
  • Creates a "keep-away" zone
  • Use for: Parting lines, bald spots, repelling zones

Example use case for Repel: Create a center parting by placing a repel arrow along the center line. Hair on both sides flows away from the center.

Bending Profile

Curve controlling how strands bend along their length.

What it does: Controls bending strength from root (left) to tip (right).

Default curve:

  • Root (0.0): 0.0 (no bending at root)
  • Middle (0.3): 0.1 (slight bending)
  • Middle (0.7): 0.6 (moderate bending)
  • Tip (1.0): 1.0 (full bending at tip)

Visual effect: Roots stay fixed, tips bend fully. This is natural - real hair bends more at the tips.

Preset buttons:

Linear: Gradual bend from root to tip

Root: 0.0, Tip: 1.0 (straight line)

Smooth: Natural S-curve bend

Root: 0.0, Early: 0.05, Late: 0.5, Tip: 1.0

Late: Straight then bend at tips

Root: 0.0, Middle: 0.0, Late: 0.5, Tip: 1.0

Early: Bend near root, straight tips

Root: 0.0, Early: 0.5, Middle: 1.0, Tip: 1.0

Tip: The default "Smooth" profile is most natural. Use "Late" for stiff hair that only bends at tips.

Slope (Bend to Surface)

The Slope section makes hair lay flat against the surface.

Amount

Overall slope strength.

Range: 0.0 to 1.0 (Default: 0.0)

What it does:

  • 0.0 = Hair stands upright (perpendicular to surface)
  • 0.5 = Hair tilts toward surface
  • 1.0 = Hair lays completely flat on surface

When to use:

  • Short fur: 0.3-0.6 (slight tilt)
  • Slicked hair: 0.7-0.9 (very flat)
  • Upright hair: 0.0 (no slope)

Visual effect: Hair bends toward the surface, creating a "combed down" look.

Root

Slope amount at strand roots.

Range: 0.0 to 1.0 (Default: 0.0)

What it does: How much roots tilt toward surface.

Typical value: 0.0-0.3 (roots usually stay more upright)

Tip

Slope amount at strand tips.

Range: 0.0 to 1.0 (Default: 0.5)

What it does: How much tips tilt toward surface.

Typical value: 0.3-0.8 (tips usually lay flatter)

Tip: Use Root < Tip for natural behavior. Roots stay upright, tips lay down.

Lift (Tips Up/Down)

The Lift section tilts strand tips toward or away from the surface. This is great for beards and facial hair!

Amount

Tilt tips toward/away from surface.

Range: -1.0 to 1.0 (Default: 0.0)

What it does:

  • -1.0 = Tips tilt strongly toward surface (curl under)
  • 0.0 = No lift effect
  • +1.0 = Tips tilt strongly away from surface (curl up/out)

When to use:

  • Beards: -0.3 to -0.6 (tips curl under chin)
  • Upward curls: +0.3 to +0.6 (tips curl up)
  • Neutral: 0.0

Visual effect: Tips rotate toward or away from the surface, creating curl-under or curl-up effects.

Example: For a natural beard, use Lift -0.4. Tips curl under the chin naturally.

Lift Profile

Curve controlling lift strength along strand length.

Default: Linear (0.0 at root, 1.0 at tip)

What it does: Controls where lift is strongest. Usually strongest at tips.

Common profiles:

  • Linear (default): Gradual lift from root to tip
  • Tip only: No lift until tips (0.0 until 0.7, then ramp to 1.0)
  • Uniform: Same lift everywhere (flat line at 1.0)

Tip: The default linear profile is natural. Lift increases toward tips.

Surface Follow

The Surface Follow section makes strands hug the surface contour. This is perfect for short fur and surface-hugging hair!

Amount

How much strands follow the surface.

Range: 0.0 to 1.0 (Default: 0.0)

What it does:

  • 0.0 = No surface following (strands project outward)
  • 0.5 = Moderate surface hugging
  • 1.0 = Full surface hugging (strands stick to surface)

When to use:

  • Short fur: 0.6-0.9 (strong hugging)
  • Surface-hugging hair: 0.4-0.7
  • Normal hair: 0.0-0.3 (minimal hugging)

Visual effect: Strands follow the surface contour, wrapping around curves and bumps.

Example: For short fur on an animal, use Amount 0.8. Fur hugs the body surface.

Offset

Distance to maintain from surface.

Range: 0.001 to 0.2 (Default: 0.01)

What it does: How far strands stay from the surface.

  • 0.001 = Very close (almost touching)
  • 0.01 = Normal offset
  • 0.05+ = Farther from surface

Typical value: 0.005-0.02 depending on strand thickness.

Tip: Increase offset if strands intersect the surface. Decrease for tighter hugging.

Surface Follow Profile

Curve controlling surface follow strength along strand length.

Default: Flat (1.0 everywhere)

What it does: Controls where surface following is strongest.

Common profiles:

  • Uniform (default): Same following everywhere
  • Tip only: Following only at tips
  • Root only: Following only at roots

Tip: Usually leave at default (uniform). Surface following works best when consistent.

Blending Options

The Blending section controls how arrows interact.

Mode

How multiple arrows blend together.

Options:

  1. Smooth (Gaussian) (Default) - Smooth Gaussian falloff
  2. Linear - Linear distance falloff
  3. Nearest - Use nearest arrow only (no blending)

What each mode does:

Smooth (Gaussian) (Recommended):

  • Arrows blend smoothly with Gaussian falloff
  • Natural, organic blending
  • Use for: Almost everything

Linear:

  • Linear distance-based blending
  • More predictable falloff
  • Use for: Precise control

Nearest:

  • Each strand uses only the nearest arrow
  • No blending between arrows
  • Use for: Sharp boundaries, distinct regions

Tip: Use "Smooth (Gaussian)" for natural results.

Constrain to Surface

Project arrow directions onto surface tangent plane.

Default: Checked (enabled)

What it does:

  • Checked: Arrows flow along the surface (tangent to surface)
  • Unchecked: Arrows can point away from surface (3D directions)

When to use:

  • Checked (default): Normal hair that flows along the scalp
  • Unchecked: Special effects, 3D flow patterns

Tip: Leave this checked for natural hair flow.

Preserve Length

Keep strand segment lengths constant after combing.

Default: Checked (enabled)

What it does:

  • Checked: Strand lengths stay the same (segments maintain length)
  • Unchecked: Strand lengths can change during bending

When to use: Almost always leave checked. Preserving length prevents unnatural stretching.

Flow Curves (Advanced)

Flow Curves are an advanced method using velocity field advection. Hair follows drawn curves like water flowing along paths.

Note: This is more complex than Direction Arrows. Only use if you need Houdini-style advection.

Editing Curves

Click the "Draw Curves" button to enter curve drawing mode.

Controls:

  • Click + Drag = Draw curve on surface
  • DEL key = Delete curve
  • ESC = Exit drawing mode

Strength

Overall advection strength.

Range: 0.0 to 1.0 (Default: 1.0)

What it does: How strongly hair follows the curves.

Falloff

Distance falloff from curves.

Range: 0.01 to 1.0 (Default: 0.3)

What it does: How far from curves the effect reaches.

  • 0.1 = Tight falloff (effect near curves only)
  • 0.3 = Medium falloff
  • 0.8 = Wide falloff (effect reaches far)

Surface Follow (for Curves)

Flow Curves have their own Surface Follow controls (same as Direction Arrows).

Amount: How much strands hug surface after advection Offset: Distance from surface Profile: Curve controlling follow strength along strand

Tip: Use Surface Follow with Flow Curves to keep hair on the surface after advection.

Practical Examples

Example 1: Natural Head Hair Flow

Method: Direction Arrows
Strength: 1.0
Behavior: Direct
Bending Profile: Smooth
Slope Amount: 0.2
Slope Root: 0.0
Slope Tip: 0.4
Mirror: Enabled (X-axis)

Place arrows flowing backward from forehead, downward on sides. Result: Natural head hair flow.

Example 2: Center Parting

Method: Direction Arrows
Behavior: Repel
Strength: 1.0

Place one repel arrow along center line. Hair flows away from center on both sides. Result: Clean center parting.

Example 3: Beard with Curl-Under

Method: Direction Arrows
Strength: 1.0
Behavior: Direct
Lift Amount: -0.5
Slope Amount: 0.3

Place arrows pointing downward. Lift -0.5 makes tips curl under chin. Result: Natural beard shape.

Example 4: Short Fur

Method: Direction Arrows
Strength: 1.0
Surface Follow Amount: 0.8
Surface Offset: 0.008
Slope Amount: 0.6

Place arrows following body contours. Result: Fur hugs the body surface.

Example 5: Swirled Crown

Method: Direction Arrows
Strength: 1.0
Behavior: Direct
Bending Profile: Smooth

Place arrows in circular pattern at crown. Result: Natural hair swirl at crown.

Example 6: Slicked Back Hair

Method: Direction Arrows
Strength: 1.0
Slope Amount: 0.8
Slope Root: 0.6
Slope Tip: 0.9
Bending Profile: Linear

Place arrows pointing backward. High slope makes hair lay flat. Result: Slicked back, flat hair.

FollicleScript Examples

Per-Strand Strength Variation

rand(0.8, 1.0, index)

Each strand gets random strength between 0.8-1.0 for natural variation.

UV-Based Strength

v > 0.5 ? 1.0 : 0.5

Top half (v>0.5) gets full strength, bottom half gets 50% strength.

Gradient Slope

lerp(0.2, 0.8, v)

Bottom (v=0) has 20% slope, top (v=1) has 80% slope.

Conditional Lift

u < 0.5 ? -0.4 : 0.0

Left side (u<0.5) has -0.4 lift (curl under), right side has no lift.

Tips and Best Practices

Start with Direction Arrows: They're intuitive and work great for most use cases. Save Flow Curves for advanced needs.

Use Mirror for Symmetry: Enable mirror mode when working on symmetrical objects (heads, bodies). Work on one side, get both sides.

Smooth Bending Profile: The default smooth profile is natural. Roots fixed, tips bend. Don't change unless you have a reason.

Slope for Flat Hair: Use Slope to make hair lay flat. Great for slicked hair, short fur, combed-down looks.

Lift for Beards: Negative lift makes tips curl under. Perfect for natural beard shape.

Surface Follow for Fur: High surface follow (0.7-0.9) makes fur hug the body. Essential for short fur.

Repel for Partings: Use Repel behavior to create partings. Hair flows away from repel arrows.

Preserve Length: Always keep "Preserve Length" checked. Prevents unnatural stretching.

Constrain to Surface: Keep this checked for natural hair. Unchecked is for special effects only.

Expressions for Variation: Add per-strand variation with expressions. Uniform strength looks CG.

Common Mistakes

Too Many Arrows: Placing arrows everywhere. You only need arrows where flow changes. Arrows blend smoothly, so a few well-placed arrows go a long way.

Wrong Behavior Mode: Using Repel when you want Direct. Repel is for partings and keep-away zones, not normal flow.

Flat Bending Profile: Using a flat profile (uniform bending). The default smooth profile (roots fixed, tips bend) is natural.

No Mirror: Manually placing arrows on both sides of a symmetrical object. Use mirror mode!

Ignoring Surface Follow: Not using Surface Follow for short fur. Surface Follow is essential for fur that hugs the body.

Wrong Slope Values: Using high slope on long hair. High slope is for short, flat hair. Long hair needs lower slope.

Forgetting Lift: Not using Lift for beards. Negative lift creates natural curl-under at chin.

Unchecking Preserve Length: Disabling "Preserve Length". This causes unnatural stretching. Keep it checked.

Next Steps

Flow Direction is usually applied early in your modifier stack, often right after guides are generated. After flow direction, add:

  • Clumping Modifier - Group strands into bundles
  • Coil Modifier - Add spiral curls
  • Frizz Modifier - Add randomness and flyaways

Related Topics:

  • Modifiers Tab - Understanding the modifier stack
  • Clumping Modifier - Grouping strands
  • Surface Tab - Additional surface controls
  • FollicleScript Expressions - Advanced variation

---

Flow Direction is essential for natural hair. Master arrow placement and you can create any flow pattern you imagine!