Surface Comb Operator 

Surface Comb node is designed to procedurally define the shape and orientation of character fur along a surface. It can be used to style large number of hairs at a macro level by using directional vectors to specify their flow and a curve to define their shape relative to the distribution surface.

 

Workflow 

When Surface Comb operator is added you will not see any changes on your hair object until you start adding sinks. These are arrows that you can draw on the surface mesh to direct the hair along the surface.

 

Editing Sinks 

Use the Edit Sinks tool to add and edit sinks. This tool is located in the Ornatrix shelf.

Using Sinks with the Surface Comb operator
 

Parameters 

  • Strand Group
    Specifies to which hairs this operator will be applied. Hairs not belonging to specified strand group will be ignored.
  • Algorithm
    The algorithm used to compute surface combing.
    • Triangulation
      Legacy way of calculating strand shapes from sinks. Each surface mesh vertex is assigned direction and sink associations based on its proximity to the sinks. Strands then use their surface dependency information to interpolate the strand's direction and shape information. This method is faster but generally only works well for short fur.
    • Mesh Vertex
      Recommended method. Information about strand directions and shape is calculated directly from nearby sinks. Sinks can also control the lengths of strands. This way works better for longer hair.
  • Random Seed
    A randomness value to apply to parameters such as Chaos.
  • Apply to Direction
    When turned on, this operator will change the hair direction along the surface using specified sinks. When off, direction of incoming hair will not be changed.
  • Apply to Shape
    When turned on, this operator will modify the shape of hairs using the Slope Ramp. When off, shape of incoming strands will be preserved.
  • Affect Whole Strand
    When checked the whole strand is oriented.
  • Stick to Surface
    When on, the strands will always follow the surface. Otherwise, they will attempt to follow sink direction.
  • Slope Ramp
    Controls the bending of hair strands towards the distribution surface.
  • Slope Multiplier
    Allows using a texture map to vary the amount of Slope (bending towards surface) of hairs along the surface.
  • Slope Channel
    Allows using a guide channel to vary the amount of Slope (bending towards surface) of hairs along the surface.
  • Minimum Bend Value
    Starting angle for bending the strands with -1 being opposite of surface normal. This parameter with the next one control how the hairs are bent relative to the surface.
  • Maximum Bend Value
    Ending angle for bending the strands with -1 being opposite of surface normal.
  • Chaos
    The randomness of direction. The bigger this value the more random combing direction will become relative to the user-defined sinks.
  • Chaos Scale
    Frequency of randomness added added to strand directions along the surface.
  • Chaos Multiplier and Channel
    Control this parameter using a per-strand or per-root channel.
  • Sink Orientation Type
    Controls whether strand orientation is changed locally or globally relative to the whole object
  • Sink Orientation Multiplier and Channel
    Allow to vary the sink's angle relative to the surface using a texture map or a strand channel.
  • Use Vector Orientation Map
    When this option is on the values in orientation map will be interpreted as object-space vectors to direct the hair. Otherwise, the values will be interpreted as rotation angles in radians relative to input strand's surface rotation.
  • Hide Back-Facing Sinks
    When on, sinks facing away from the view will not be displayed. Used to reduce visual clutter.
  • Display Sink Lengths
    Display the length of all sinks in the viewport.
 

External Sink Curves 

It is possible to add one or more external Maya NURBS curves to define sinks within a Surface Comb operator. When this is done the hairs will be oriented in such a way as to follow the direction of the specified curves.

NOTE: External sink curves differ from curved sinks, which are drawn directly onto the surface by holding Ctrl key.

  • The curves list shows currently present external curves
  • Add button allows you to pick a curve from the viewport to add to the external curves list
  • Remove button deletes the currently selected curve from the external curves list from the operator
  • Sink Curve Sample Count
    Specifies how many samples to get from the external curves. The more sample points the more detail will be transferred into the hair flow.
  • Freeze Sink Curves
    When checked the curves will be locked in their current state and not respond to changes of their referenced external curves.
 

Strand Data 

Surface Comb can be used to assign meta data to strands, which can be used by other operators to create procedural effects. For example, you can use sinks to control the magnitude of curling at different parts of the surface. Or you can control the density of the hair created by hair from guides operator in various parts of your character. The advantage of using this approach over maps is that sinks can be easily adjusted, added, or removed at any point of grooming to quickly modify the final hair shape. This option is particularly useful when creating procedural (graft) grooms.

To only set strand data with a Surface Comb modifier check the Apply to Strand Data option and uncheck the Apply to Direction and Apply to Shape options.

  • Apply to Strand Data
    When turned on, strand data from sinks will be assigned to output hair. This option will also enable the rest of the UI controls.
  • Target Channel
    Specifies where the data will be set. If None is specified then a new channel will be created
  • New Channel Name
    If the value of above option is None then a new per-strand channel will be created and assigned the name specified here
  • Mode
    Determines how the data will be generated
    • Sink Size: The size of each sink will be strand data value
    • Sink Distance: Distance of each strand to its closest sink will be the assigned value
    • Sink Group: Group assigned to each strand's closest sink will be the assigned value. If multiple groups are assigned, the value of the first group will be used.
  • Absolute Sink Size
    If Sink Size option above is used and this is turned on then the value assigned will be the actual size. Otherwise, the value will be relative to the longest/biggest sink and have a range of 0-1.
  • Reference Length
    If Absolute Sink Size is on, this value will be used to scale per-sink lengths
  • Min. Value
    The smallest value in the resulting value data range
  • Max. Value
    The largest value in the resulting value data range
  • Smooth
    Optional smoothing along surface of the output values
  • Set Strand Groups
    When on, the per-sink strand groups will be assigned as strand groups of the output hair
 

Related Topics 

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