Coil Modifier
The Coil modifier adds spiral curls and waves to hair strands. Think of it like wrapping hair around a curling iron - you get tight spirals, loose waves, or anything in between.
What is Coiling?
Coiling wraps strands around an invisible axis, creating spiral patterns. Unlike the subtle curl in the Clumping modifier, Coil creates strong, defined curls - the kind you see in curly hair, perms, or styled ringlets.
Visual effect: Strands spiral in 3D space, creating tight curls, loose waves, or corkscrew patterns.
When to use: Curly hair, permed hair, ringlets, spiral curls, wavy hair, any time you need defined curl patterns.
XGen-Style Design
The Coil modifier is designed to match Maya XGen's Coil modifier, with two key concepts:
Count: How many coils/turns along the strand Radius: How wide the coils are (as % of strand length)
Both have "Scale" curves that let you vary the effect along the strand length. This gives you natural-looking curls that change from root to tip.
Count Section
The Count section controls how many times strands spiral.
Count
Number of coils/turns along strand length.
Range: 0.5 to 20.0 (Default: 5.0)
What it does: How many full rotations the strand makes.
- 1.0 = One full spiral rotation
- 5.0 = Five full rotations
- 10.0 = Ten rotations (very tight spiral)
When to adjust:
- Loose curls: 1.0-3.0
- Normal curls: 3.0-7.0
- Tight curls: 7.0-15.0
- Very tight spirals: 15.0+
Visual effect: Higher count = more rotations = tighter spiral pattern.
Tip: Start with 5.0 and adjust. Count is the most important parameter for curl tightness.
Use Count Scale
Enable/disable count scaling along strand.
Default: Checked (enabled)
What it does:
- Checked: Count varies along strand using the Count Scale curve
- Unchecked: Uniform count everywhere (flat coiling)
When to use: Almost always leave checked. Natural curls vary along the strand - tighter at tips, looser at roots.
Count Scale Curve
Profile curve controlling count along strand length.
What it does: Multiplies the Count value along the strand (root to tip).
Default curve:
- Root (0.0): 0.0 (no coiling at root)
- Early (0.2): 0.1 (slight coiling)
- Middle (0.5): 0.5 (moderate coiling)
- Tip (1.0): 1.0 (full coiling at tip)
Visual effect: Strands are straight at roots, gradually coil more toward tips. This is natural - real curly hair is straighter near the scalp.
Common profiles:
Natural (default):
Root: 0.0, Early: 0.1, Middle: 0.5, Tip: 1.0
Gradual increase from root to tip
Uniform:
Root: 1.0, Tip: 1.0 (flat line)
Same coiling everywhere
Tip Only:
Root: 0.0, Middle: 0.0, Late: 0.5, Tip: 1.0
Straight until tips, then coil
Root Only:
Root: 1.0, Middle: 0.5, Tip: 0.0
Coil at roots, straight at tips (unusual but useful)
Tip: The default profile (root straight, tip coiled) is most natural.
Variation
Random count variation per strand.
Range: 0.0 to 1.0 (Default: 0.0)
What it does: Adds random variation to count per strand.
- 0.0 = All strands have same count (uniform)
- 0.3 = 30% random variation
- 0.6 = 60% random variation
When to use: 0.1-0.3 for natural variation. Real hair doesn't curl uniformly.
Visual effect: Some strands coil more, some less. Creates natural, non-uniform look.
Radius Section
The Radius section controls how wide the coils are.
Radius %
Coil radius as percentage of strand length.
Range: 0.0 to 0.15 (Default: 0.02)
What it does: How wide the spiral is, as % of strand length.
- 0.01 = 1% of length (very tight, subtle)
- 0.02 = 2% of length (tight curls)
- 0.05 = 5% of length (medium curls)
- 0.10 = 10% of length (loose, wide curls)
When to adjust:
- Tight ringlets: 0.01-0.03
- Normal curls: 0.03-0.06
- Loose waves: 0.06-0.12
Visual effect: Larger radius = wider spiral = looser curls.
Tip: Radius is expressed as % of strand length, so it scales automatically with hair length. 0.02 works well for most curly hair.
Use Radius Scale
Enable/disable radius scaling along strand.
Default: Checked (enabled)
What it does:
- Checked: Radius varies along strand using the Radius Scale curve
- Unchecked: Uniform radius everywhere
When to use: Usually leave checked. Natural curls taper - wider at roots, tighter at tips.
Radius Scale Curve
Profile curve controlling radius along strand length.
What it does: Multiplies the Radius value along the strand (root to tip).
Default curve:
- Root (0.0): 1.0 (full radius at root)
- Middle (0.5): 0.9 (slightly smaller)
- Tip (1.0): 0.7 (70% radius at tip)
Visual effect: Curls are wider at roots, tighter at tips. This is natural - real curls taper.
Common profiles:
Natural Taper (default):
Root: 1.0, Middle: 0.9, Tip: 0.7
Gradual taper from root to tip
Uniform:
Root: 1.0, Tip: 1.0 (flat line)
Same radius everywhere
Reverse Taper:
Root: 0.7, Middle: 0.9, Tip: 1.0
Tighter at roots, wider at tips (unusual)
Tip Only:
Root: 0.0, Middle: 0.0, Late: 0.5, Tip: 1.0
No radius until tips
Tip: The default taper (root wide, tip tight) is most natural.
Variation
Random radius variation per strand.
Range: 0.0 to 1.0 (Default: 0.0)
What it does: Adds random variation to radius per strand.
When to use: 0.1-0.3 for natural variation.
Visual effect: Some strands have wider curls, some tighter. Natural, non-uniform look.
Mode & Phase Section
The Mode & Phase section controls the coiling behavior and starting position.
Mode
Coil behavior mode.
Options:
- Helix (Default) - Full 3D spiral (tight curls)
- Wave - 2D oscillation (loose curls)
- Corkscrew - Helix with increasing radius toward tip
What each mode does:
Helix (Recommended):
- Full 3D spiral around strand axis
- Creates tight, defined ringlets
- Use for: Curly hair, tight curls, ringlets
- Most common mode
Wave:
- 2D oscillation (side-to-side wave)
- Creates loose, wavy patterns
- Use for: Wavy hair, loose curls, beach waves
- Less spiral, more wave
Corkscrew:
- Helix with radius increasing toward tip
- Creates corkscrew/cone shape
- Use for: Special effects, artistic curls
- Experimental mode
Tip: Use Helix for most curly hair. Use Wave for loose, wavy hair.
Phase
Starting phase offset (in radians).
Range: 0.0 to 6.28 (Default: 0.0)
What it does: Where the spiral starts (rotation offset).
- 0.0 = Start at 0 degrees
- 1.57 = Start at 90 degrees
- 3.14 = Start at 180 degrees
- 6.28 = Full rotation (back to 0)
When to use: Usually leave at 0.0. Adjust to rotate the starting position of all curls.
Visual effect: All curls rotate by the same amount.
Phase Var (Phase Variation)
Random phase variation per strand.
Range: 0.0 to 6.28 (Default: 1.0)
What it does: Adds random phase offset per strand.
- 0.0 = All strands start at same phase (uniform)
- 1.0 = Random variation up to 1 radian
- 6.28 = Full random variation (0-360 degrees)
When to use: 1.0-3.0 for natural variation. Real curls don't all start at the same angle.
Visual effect: Strands spiral in different directions. Creates natural, non-uniform look.
Tip: Default 1.0 is good. Increase for more variety.
Clump Phase
Use clump_id for phase - strands in same clump coil together.
Default: Unchecked (disabled)
What it does:
- Unchecked: Each strand gets random phase (independent coiling)
- Checked: All strands in same clump use same phase (coil together)
When to use: Check this if you want clumps to spiral together as a unit. Creates coherent clump spirals.
Visual effect: Entire clumps spiral together, not individual strands. More organized, less chaotic.
Tip: Use with Clumping modifier for coherent clump spirals.
Range Section
The Range section controls where coiling applies along the strand. This section starts collapsed.
Start
Where coil begins along strand.
Range: 0.0 to 1.0 (Default: 0.0)
What it does: Starting position (0=root, 1=tip).
- 0.0 = Coil starts at root
- 0.3 = Coil starts 30% down the strand
- 0.5 = Coil starts at midpoint
When to use: Usually leave at 0.0 (start at root). Increase to delay coiling.
Example: Start 0.3 = straight for first 30%, then coil.
End
Where coil ends along strand.
Range: 0.0 to 1.0 (Default: 1.0)
What it does: Ending position (0=root, 1=tip).
- 1.0 = Coil ends at tip
- 0.7 = Coil ends at 70% down the strand
When to use: Usually leave at 1.0 (end at tip). Decrease to stop coiling early.
Example: End 0.7 = coil for first 70%, then straight.
Ramp In
Smooth fade-in at start.
Range: 0.0 to 0.5 (Default: 0.15)
What it does: How gradually coiling fades in.
- 0.0 = Instant coiling (sharp transition)
- 0.15 = Gradual fade-in over 15% of strand
- 0.3 = Slow fade-in over 30% of strand
When to use: 0.1-0.2 for smooth transitions. Prevents sharp kinks.
Visual effect: Coiling gradually increases at the start position.
Tip: Default 0.15 is good. Increase for smoother transitions.
Ramp Out
Smooth fade-out at end.
Range: 0.0 to 0.5 (Default: 0.0)
What it does: How gradually coiling fades out.
When to use: 0.1-0.2 if you want coiling to fade out smoothly at tips.
Visual effect: Coiling gradually decreases at the end position.
Advanced Section
The Advanced section has additional controls. This section starts collapsed.
Preserve Length
Maintain original strand length.
Range: 0.0 to 1.0 (Default: 0.0)
What it does:
- 0.0 = Don't preserve length (strands can shorten due to coiling)
- 0.5 = Partially preserve length
- 1.0 = Fully preserve original length
When to use: Usually leave at 0.0. Real curly hair is shorter than straight hair of the same length.
Visual effect:
- 0.0 = Natural shortening (curls make hair appear shorter)
- 1.0 = Strands stretch to maintain length (can look unnatural)
Tip: Leave at 0.0 for natural curls. Coiling naturally shortens apparent length.
Seed
Random seed for variation.
Range: 0 to 99999 (Default: 123)
What it does: Controls all randomization (count variation, radius variation, phase variation).
When to use: Change to try different random patterns.
Practical Examples
Example 1: Tight Ringlets
Count: 8.0
Radius %: 0.025
Mode: Helix
Count Scale: Default (root 0, tip 1)
Radius Scale: Default (root 1, tip 0.7)
Phase Var: 2.0
Result: Tight, defined ringlets with natural taper
Example 2: Loose Wavy Hair
Count: 2.0
Radius %: 0.08
Mode: Wave
Count Scale: Uniform (flat at 1.0)
Radius Scale: Uniform (flat at 1.0)
Phase Var: 3.0
Result: Loose, wavy hair with gentle curves
Example 3: Natural Curly Hair
Count: 5.0
Radius %: 0.04
Mode: Helix
Count Scale: Default (root 0, tip 1)
Radius Scale: Default (root 1, tip 0.7)
Count Variation: 0.2
Radius Variation: 0.15
Phase Var: 1.5
Result: Natural curly hair with variation
Example 4: Tight Spiral Curls
Count: 12.0
Radius %: 0.02
Mode: Helix
Count Scale: Default
Radius Scale: Default
Phase Var: 1.0
Result: Very tight spiral curls (perm-like)
Example 5: Beach Waves
Count: 1.5
Radius %: 0.10
Mode: Wave
Count Scale: Uniform (flat at 1.0)
Radius Scale: Uniform (flat at 1.0)
Phase Var: 4.0
Result: Loose beach waves
Example 6: Clump-Coherent Spirals
Count: 6.0
Radius %: 0.03
Mode: Helix
Clump Phase: Checked
Phase Var: 0.5
Result: Entire clumps spiral together (use with Clumping modifier)
Example 7: Root Straight, Tip Curly
Count: 7.0
Radius %: 0.035
Mode: Helix
Start: 0.4
Ramp In: 0.2
Result: Straight for first 40%, then curly (natural look)
FollicleScript Examples
Per-Strand Count Variation
5.0 + rand(index) * 2.0
Count varies between 5.0 and 7.0 per strand
UV-Based Count
lerp(3.0, 8.0, v)
Bottom (v=0) has 3 coils, top (v=1) has 8 coils
Conditional Radius
u < 0.5 ? 0.02 : 0.05
Left side (u<0.5) has tight radius, right side has loose radius
Random Radius Variation
0.04 * rand3(0.8, 1.2, index)
Radius varies between 80% and 120% of 0.04
Note: Expression support is planned for future C++ implementation. Currently, use Variation parameters for randomness.
Tips and Best Practices
Start with Count and Radius: These are the two most important parameters. Count controls tightness, Radius controls width.
Use Default Curves: The default Count Scale and Radius Scale curves are natural. Don't change unless you have a reason.
Add Variation: Use Count Variation and Radius Variation (0.1-0.3) for natural, non-uniform curls.
Helix for Curls, Wave for Waves: Use Helix mode for tight curls, Wave mode for loose waves.
Phase Variation is Key: Default Phase Var 1.0 is good. Increase for more variety in curl directions.
Clump Phase for Coherence: Check "Clump Phase" if you want entire clumps to spiral together (use with Clumping modifier).
Preserve Length = 0: Leave Preserve Length at 0.0. Real curls shorten apparent length naturally.
Ramp In for Smooth Transitions: Use Ramp In 0.15 to avoid sharp kinks at the start position.
Combine with Clumping: Coil works great after Clumping. Clump first, then coil for natural curly hair.
Count Scale for Natural Look: The default Count Scale (root 0, tip 1) is most natural. Roots straight, tips curly.
Common Mistakes
Too Much Count: Using Count 15+ for everything. This creates overly tight spirals. Use 3-8 for most curly hair.
Uniform Curves: Using flat Count Scale and Radius Scale curves. The default tapered curves are more natural.
No Variation: Forgetting to add Count Variation and Radius Variation. Uniform coiling looks CG.
Wrong Mode: Using Wave when you want tight curls. Wave is for loose waves, Helix is for curls.
No Phase Variation: Leaving Phase Var at 0.0. All curls spiral in the same direction, looks uniform.
Preserve Length = 1: Setting Preserve Length to 1.0. This stretches strands unnaturally. Leave at 0.0.
Ignoring Radius Scale: Not using the Radius Scale curve. Natural curls taper (wider at root, tighter at tip).
Too Much Radius: Using Radius 0.10+ for tight curls. This creates loose spirals. Use 0.02-0.04 for tight curls.
Next Steps
Coil is usually applied after Clumping in your modifier stack. After coiling, add:
- Frizz Modifier - Add randomness and flyaways to curls
- Cut Modifier - Trim to final length
- Flow Direction - Control overall curl direction
Related Topics:
- Modifiers Tab - Understanding the modifier stack
- Clumping Modifier - Group strands before coiling
- Frizz Modifier - Add randomness to curls
- FollicleScript Expressions - Advanced variation
---
Coil is essential for curly hair. Master Count and Radius, and you can create any curl pattern you imagine!