Grooming Hair Curves with Geometry Nodes in Blender
Blender's modern hair system combines interactive curve sculpting with the procedural power of Geometry Nodes. This guide explains how to generate hair curves on a mesh, manipulate them interactively using sculpt brushes, and apply procedural Geometry Nodes to style, clump, frizz, and deform your hair grooms non-destructively.
1. Generating Base Hair Curves
- Select your target character mesh in the 3D Viewport.
- Press Shift + A and navigate to Curves > Empty Hair (for complete manual control) or Fur (for an automated distribution setup).
- Blender will create a new Curves object parented to the target surface, automatically utilizing the surface's UV map to bind root positions.
2. Direct Grooming with Curves Sculpt Mode
Before applying procedural nodes, establish the primary silhouette and flow of the hair:
- Select the Curves object and switch from Object Mode to Curves Sculpt Mode in the top-left dropdown.
- Use the following primary brushes from the toolbar:
- Comb: Directionally styles and guides the flow of the curves.
- Density: Adds or removes hair strands procedurally based on brush radius.
- Snake Hook / Grab: Pulls, extends, and shapes long strands or locks.
- Grow / Shrink: Adjusts the overall length of existing curves.
- Puff: Pushes hairs away from or pulls them toward the surface normals.
3. Applying Procedural Geometry Node Modifiers
Blender includes built-in hair asset nodes that can be stacked directly in the Modifiers tab to handle high-density detailing.
- Select your Curves object and open the Modifier Properties tab.
- Click Add Modifier > Hair Assets (or load them from the Asset Browser under the "Hair" library).
- Stack essential hair modifier nodes in the following standard order:
- Interpolate Hair Curves: Generates dense child hairs between the sculpted guide curves based on the surface mesh.
- Clump Hair Curves: Pulls child hairs toward guide curves to create distinct clumps, strands, and hair locks.
- Hair Curves Noise / Frizz: Adds subtle micro-variations and natural chaos along the curve length.
- Curl / Braid Hair Curves: Twists curves into helical or braided shapes for curly or textured hairstyles.
4. Customizing Geometry Nodes Directly
To edit or build custom grooming behavior from scratch:
- Open the Geometry Node Editor workspace.
- Select the Curves object to view its active node graph.
- Access curve attributes using specific utility nodes:
- Curve Length / Spline Parameter: Controls how effects vary from the root (0.0) to the tip (1.0).
- Set Curve Radius: Controls the visual thickness along the strand for rendering.
- Sample UV Surface: Ensures new hairs generated in Geometry Nodes inherit coordinates and colors directly from the emitter mesh.
5. Finalizing and Rendering
Ensure hair curves have the correct render properties before outputting:
- Under the Curves object's Render Properties, ensure the shape is set correctly (e.g., Ribbon for fast EEVEE rendering or Thick 3D Curves for realistic Cycles rendering).
- Assign a hair shader using the Principled Hair BSDF material in the Material Properties tab for realistic light scattering and melanin-based coloring.