Working with Strand Channels 

A strand channel stores an extra value on each strand, which you can then use to drive operator parameters. Where strand groups switch an operator on or off for whole strands, channels vary a value smoothly - so you can, for instance, make frizz strong in some areas and weak in others, or make clumping vary along the length of each strand.

 

Root channels and vertex channels 

There are two kinds of channels, differing in where the values live:

  • Root (per-strand) channels store one value per strand. They are compact and well suited to properties that are uniform along a strand but vary from strand to strand, such as density or a per-strand strength.
  • Vertex (per-vertex) channels store a value at every point along every strand. They use more memory but let a value change along the length of a strand, which is ideal for effects like clumping, frizz, and shading variation.

Each channel holds a single scalar value. To represent a vector or a color, several consecutive channels are used together (for example three channels for XYZ or RGB).

 

Creating channels 

The usual way to create and paint a channel is with the Edit Guides Operator:

  1. In the Edit Guides Operator, switch to brush mode and open the channels controls.
  2. Create either a per-strand (root) channel or a per-vertex (vertex) channel, and give it a descriptive name.
  3. Select the paint brush, choose a value between 0 and 1, and paint the channel onto the strands. See Paint Texture Tool and Brush Tools.

Channels can also be generated procedurally with the Generate Strand Data Operator - from an expression, a texture map, or a value range - which is the way to turn a map into per-strand data you can reuse.

Note that the first root channel and the first vertex channel are reserved by Ornatrix for strand selection and cannot be removed, although they can be edited.

 

Using channels in operators 

Many operators have parameters that can be driven by a channel. Where a parameter offers a channel selector, pick a channel and its values will set the parameter across the groom - for example, using a painted channel to control the Frizz Operator amount so frizz follows exactly where you painted. A single channel can drive as many operators as you like, which makes channels a powerful way to keep a groom coherent.

 

Related 

Missing Something? Let us know if this page needs more information about the topic.