Clumping Modifier
The Clumping modifier groups strands together into natural bundles, like wet hair or tight curls. This is the most essential modifier for realistic hair - almost all real hair clumps naturally.
What is Clumping?
Clumping pulls strands toward "clump centers" (either guides or procedurally generated points), creating distinct bundles with gaps between them. This is how real hair behaves - individual strands stick together due to oils, moisture, or natural curl patterns.
Visual effect: Strands group into bundles. Instead of uniform hair, you get distinct clumps with visible gaps between them.
When to use: Almost always! Natural hair, wet hair, tight curls, any realistic hair styling.
Clump Source
The Clump Source section controls where clumps are centered.
Use Guides as Clump Centers
Use guide curves as clump centers vs procedural generation.
Default: Checked (enabled)
What it does:
- Checked: Each guide becomes a clump center. Strands pull toward nearby guides.
- Unchecked: Procedurally generate clump centers (ignores guides).
When to use:
- Guides (checked): Most common. Natural clumping following your guide flow.
- Procedural (unchecked): Experimental. Generates random clump centers.
Tip: Leave this checked unless you have a specific reason to use procedural clumps.
Num Clumps
Number of procedural clumps (only when "Use Guides" is unchecked).
Range: 1 to 500 (Default: 50)
What it does: How many procedural clump centers to generate.
When to use: Only relevant when "Use Guides" is disabled.
Clump Effect
The Clump Effect section controls the core clumping behavior.
Tightness
How strongly strands pull toward clump centers.
Range: 0.0 to 1.0 (Default: 0.7)
What it does:
- 0.0 = No clumping (strands stay in original positions)
- 0.5 = Moderate clumping (loose, natural)
- 0.7 = Strong clumping (tight, defined clumps)
- 1.0 = Maximum convergence (very tight, wet look)
When to adjust:
- Loose, natural hair: 0.3-0.6
- Normal clumping: 0.6-0.8
- Tight clumps (wet hair, tight curls): 0.8-1.0
Expression support: Yes
Example expression:
rand3(0.6, 0.9, clump_id)
Each clump gets random tightness between 0.6-0.9 for natural variation.
Blend
Overall clumping strength (blends with original positions).
Range: 0.0 to 1.0 (Default: 1.0)
What it does:
- 0.0 = Original positions (no clumping visible)
- 0.5 = 50% clumped, 50% original
- 1.0 = Full clumping effect
When to use:
- Usually leave at 1.0 for full effect
- Lower values for subtle clumping
- Animate from 0→1 for "hair getting wet" effect
Expression support: Yes
Tightness Profile
Curve controlling tightness along strand length (root to tip).
What it does: Controls how tightness varies from root (left) to tip (right).
Default curve:
- Root (0.0): 0.0 (spread out)
- Middle (0.5): 0.5 (moderate)
- Tip (1.0): 1.0 (tight convergence)
Visual effect: Strands spread at roots, converge at tips. This is the XGen-style "natural clumping" look.
Common profiles:
Natural (default):
Root: 0.0, Middle: 0.5, Tip: 1.0
Spread at roots, tight at tips
Uniform:
Root: 1.0, Tip: 1.0 (flat line)
Same tightness everywhere
Reverse:
Root: 1.0, Tip: 0.0
Tight at roots, spread at tips (unusual but useful for specific looks)
Tip: The default profile (root spread, tip convergence) is natural for most hair.
Length Mode
How strand lengths are handled during clumping.
Options:
- None (Tips Collapse) - All strand tips converge to same point
- Preserve Differences (Default) - Maintain relative length differences
- Extend to Match - Extend shorter strands to match clump length
- Shorten to Match - Shorten longer strands to not exceed clump tip
What each mode does:
None (Tips Collapse):
- All strands sample the full clump curve (0→1)
- Tips collapse to the same point
- Creates very tight, uniform clump tips
- Use for: Wet hair, very tight clumps
Preserve Differences (Recommended):
- Maintains original length variation
- Shorter strands stay shorter, longer stay longer
- Most natural look
- Use for: Almost everything
Extend to Match:
- Extends shorter strands to match the longest strand in the clump
- All strands reach the same tip point
- Use for: Uniform clump tips without collapse
Shorten to Match:
- Shortens longer strands to not exceed clump tip
- Prevents strands from sticking out past clump
- Use for: Clean, controlled clump tips
Tip: "Preserve Differences" is the most natural. Use "None" for wet hair.
Stray Control
The Stray Control section creates "rebel" strands that resist clumping.
Stray Rate
Percentage of strands that become strays (resist clumping).
Range: 0.0 to 1.0 (Default: 0.0)
What it does:
- 0.0 = All strands clump normally
- 0.1 = 10% of strands become strays
- 0.3 = 30% of strands resist clumping
When to use:
- Add realism: 0.05-0.15 (5-15% strays)
- Messy hair: 0.2-0.4
- Very loose clumping: 0.5+
Visual effect: Some strands break away from clumps, creating a more natural, less uniform look.
Stray Amount
How much stray strands resist clumping.
Range: 0.0 to 1.0 (Default: 0.5)
What it does:
- 0.0 = Strays still clump fully (no effect)
- 0.5 = Strays clump at 50% strength
- 1.0 = Strays completely ignore clumping
When to use: Usually 0.5-0.8 for natural stray behavior.
Tip: Combine with Stray Rate. Example: Rate 0.1, Amount 0.7 = 10% of strands resist 70% of clumping.
Stray Falloff
Distance-based stray falloff (Houdini-style).
Range: 0.0 to 2.0 (Default: 0.0)
What it does:
- 0.0 = Uniform stray distribution
- 1.0 = Strands near clump center resist less, edge strands resist more
- 2.0 = Strong center-to-edge falloff
Visual effect: Creates natural variation where center strands clump tightly, edge strands break away.
When to use: 0.5-1.5 for natural center-to-edge variation.
Crossover
Rate at which strands cross between clumps.
Range: 0.0 to 1.0 (Default: 0.0)
What it does: Allows strands to switch between clumps, creating inter-clump connections.
When to use: 0.1-0.3 for subtle inter-clump connections. Creates more organic, less separated clumps.
Curl Effect
The Curl Effect section adds spiral patterns to clumped strands.
Enable Curling
Turn curl effect on/off.
Default: Unchecked (disabled)
What it does: Applies spiral/curl pattern to clumped strands.
When to use: Check this to add curls on top of clumping.
Amplitude
Curl radius/width.
Range: 0.0 to 0.5 (Default: 0.05)
What it does: How wide the curls are.
- 0.01 = Tight, small curls
- 0.05 = Medium curls
- 0.2+ = Wide, loose curls
Visual effect: Larger values = wider spiral radius.
Frequency
Number of curl rotations along strand.
Range: 0.1 to 10.0 (Default: 2.0)
What it does: How many times the strand spirals.
- 1.0 = One full rotation
- 2.0 = Two rotations
- 5.0 = Five rotations (tight spiral)
Visual effect: Higher values = more rotations = tighter spiral pattern.
Curl Profile
Curve controlling curl amplitude along strand length.
Default: Linear (0.0 at root, 1.0 at tip)
What it does: Controls where curls are strongest.
Common profiles:
- Root to tip (default): Curls increase toward tips
- Tip only: Curls only at tips (0.0 until 0.7, then ramp to 1.0)
- Uniform: Same curl everywhere (flat line at 1.0)
Noise Effect
The Noise Effect section adds coherent noise to clumped strands.
Important: This noise is clump-coherent - all strands in a clump move together! This creates natural clump waviness, not per-strand randomness.
Enable Noise
Turn noise effect on/off.
Default: Unchecked (disabled)
What it does: Applies coherent noise displacement to clumps.
Amplitude
Noise displacement amount.
Range: 0.0 to 0.2 (Default: 0.02)
What it does: How much clumps are displaced by noise.
- 0.01 = Subtle waviness
- 0.02 = Moderate waviness
- 0.05+ = Strong waviness
Visual effect: Clumps wave and undulate together.
Frequency
Noise frequency/detail.
Range: 0.1 to 5.0 (Default: 1.0)
What it does: How detailed the noise pattern is.
- 0.5 = Large, smooth waves
- 1.0 = Medium detail
- 3.0+ = Fine, detailed noise
Octaves
Number of noise layers.
Range: 1 to 8 (Default: 2)
What it does: Adds detail layers. More octaves = more detail, slower performance.
Typical values:
- 1 = Simple noise
- 2-3 = Natural detail
- 4+ = Very detailed (slower)
Seed
Random seed for noise pattern.
Range: 0 to 10000 (Default: 42)
What it does: Change to try different noise patterns.
Noise Profile
Curve controlling noise amplitude along strand length.
Default: Linear (0.0 at root, 1.0 at tip)
What it does: Controls where noise is strongest. Usually stronger at tips.
Fractal Clumping
The Fractal Clumping section creates hierarchical sub-clumps within clumps.
Iterations
Number of fractal clumping levels.
Range: 1 to 5 (Default: 1)
What it does:
- 1 = Single level clumping (normal)
- 2 = Clumps within clumps (one level of sub-clumps)
- 3+ = Multiple levels of hierarchical clumping
Visual effect: Creates natural complexity where clumps have sub-clumps.
When to use:
- 1 = Most hair (simple clumping)
- 2 = Natural hair with sub-structure
- 3+ = Very complex, natural-looking hair
Performance: More iterations = slower. Use 1-2 for most cases.
Size Reduce
Size reduction per fractal iteration.
Range: 0.1 to 0.9 (Default: 0.5)
What it does: How much smaller each sub-clump level is.
- 0.5 = Sub-clumps are half the size of parent
- 0.3 = Sub-clumps are 30% of parent size
Typical value: 0.4-0.6 for natural hierarchy.
Tip Focus
Tip convergence feedback (goal feedback).
Range: 0.0 to 1.0 (Default: 0.0)
What it does: Makes tips converge more aggressively.
- 0.0 = Standard clumping
- 0.5+ = Tips pull together more strongly
When to use: 0.2-0.5 for tighter tip convergence.
Level Reduce
Tightness reduction per hierarchical level.
Range: 0.0 to 0.5 (Default: 0.1)
What it does: Reduces tightness for each sub-clump level.
- 0.0 = Same tightness at all levels
- 0.2 = Each level is 20% looser
Visual effect: Parent clumps are tight, sub-clumps are looser. Natural hierarchy.
Advanced
Seed
Random seed for reproducible results.
Range: 0 to 10000 (Default: 1337)
What it does: Controls all randomization. Change to try different random patterns.
Practical Examples
Example 1: Natural Hair
Tightness: 0.6
Blend: 1.0
Length Mode: Preserve Differences
Stray Rate: 0.1
Stray Amount: 0.6
Result: Natural clumping with 10% stray strands
Example 2: Wet Hair
Tightness: 0.95
Blend: 1.0
Length Mode: None (Tips Collapse)
Stray Rate: 0.0
Result: Very tight clumps, tips converge (wet look)
Example 3: Loose Wavy Hair
Tightness: 0.4
Blend: 1.0
Length Mode: Preserve Differences
Enable Curling: Yes
Curl Amplitude: 0.08
Curl Frequency: 1.5
Stray Rate: 0.15
Result: Loose clumps with gentle waves
Example 4: Tight Curly Hair
Tightness: 0.8
Blend: 1.0
Enable Curling: Yes
Curl Amplitude: 0.03
Curl Frequency: 5.0
Fractal Iterations: 2
Size Reduce: 0.5
Result: Tight clumps with spiral curls and sub-clumps
Example 5: Hierarchical Natural Hair
Tightness: 0.65
Blend: 1.0
Length Mode: Preserve Differences
Fractal Iterations: 2
Size Reduce: 0.5
Level Reduce: 0.15
Stray Rate: 0.12
Enable Noise: Yes
Noise Amplitude: 0.015
Result: Complex, natural hair with clumps, sub-clumps, strays, and waviness
FollicleScript Examples
Per-Clump Tightness Variation
rand3(0.5, 0.8, clump_id)
Each clump gets random tightness between 0.5-0.8
UV-Based Tightness
v > 0.5 ? 0.8 : 0.5
Top half (v>0.5) gets tighter clumping than bottom half
Gradient Blend
lerp(0.5, 1.0, v)
Bottom (v=0) has 50% blend, top (v=1) has full blend
Conditional Stray Rate
u < 0.3 ? 0.2 : 0.05
Left side (u<0.3) has 20% strays, rest has 5%
Tips and Best Practices
Start with Defaults: The default settings (Tightness 0.7, Preserve Differences) work well for most hair.
Tightness Profile Matters: The default root-spread, tip-convergence profile is natural. Don't change it unless you have a reason.
Add Strays: 5-15% stray rate adds realism. Real hair isn't perfectly uniform.
Use Preserve Differences: This length mode is most natural. Only use "None" for wet hair.
Fractal for Complexity: 2 iterations with 0.5 size reduction adds natural sub-structure without much performance cost.
Curl vs Coil Modifier: Clumping's curl is for subtle spiral within clumps. Use the Coil modifier for strong, defined curls.
Noise is Clump-Coherent: Remember, noise moves entire clumps together, not individual strands. Use Frizz modifier for per-strand randomness.
Expressions for Variation: Use expressions to vary tightness per clump. Uniform tightness looks CG.
Common Mistakes
Too Much Tightness: Setting tightness to 1.0 for everything. This creates overly tight, unnatural clumps. Use 0.6-0.8 for most hair.
Wrong Length Mode: Using "None" for dry hair. This makes tips collapse unnaturally. Use "Preserve Differences".
No Strays: Forgetting to add stray strands. Real hair has rebels! Add 5-15% strays.
Ignoring Tightness Profile: Using a flat profile (uniform tightness). The default root-spread, tip-convergence is natural.
Too Many Fractal Iterations: Using 4-5 iterations. This is slow and usually unnecessary. 1-2 iterations is enough.
Confusing Curl and Coil: Using clumping curl for strong curls. Clumping curl is subtle. Use Coil modifier for defined curls.
Uniform Tightness: Not using expressions for per-clump variation. Add variation with rand3(0.6, 0.8, clump_id).
Next Steps
Clumping is usually the first modifier in your stack. After clumping, add:
- Coil Modifier - Add defined spiral curls
- Frizz Modifier - Add per-strand randomness and flyaways
- Cut Modifier - Trim to final length
Related Topics:
- Modifiers Tab - Understanding the modifier stack
- Coil Modifier - Spiral curls
- Frizz Modifier - Randomness and flyaways
- FollicleScript Expressions - Advanced variation
---
Clumping is the foundation of realistic hair. Master this modifier and you're halfway to great hair!