Tips for working with toon shading
 
 
 

Tips for creating wiggly toon lines

While several methods exist for creating wiggly toon lines, we’ve provided information about four possible techniques in this section. Depending on the level of detail needed and the density of triangles on the model you might want to turn on resampling for the lines and lower the Max Segment Length to produce enough CVs to see the wiggle effects.

To create wiggly toon lines

  1. Map the line offset and/or width attributes with a noise texture.
    • Make the noise type Perlin Noise because it is faster.
    • Adjust the alpha gain on the texture to increase/decrease the amount of offset.
    • The line offset is relative to the line width, so increasing the width scales the offset as well.
    • To make it wiggle you can animate the noise texture by typing the following in the Time attribute:
    • “= time * 5"
    • You could also step the keys on time or oscillate for various looks. You can then play with the various noise parameters to get the desired wiggle.
    • You can also map opacity or line width to create gaps.
  2. Create a line modifier for the toon line.
    • In the lineModifier node, make Width Scale 1, Surface Offset something like 0.01, and Dropoff Noise around 0.8.
    • Adjust the Noise Frequency for the desired level of detail. By default the effect is only inside the line modifier, however by deleting the second dropoff index it will also affect areas outside the modifier. This noise is a volume noise that moves with the modifier, so rotating or translating the modifier will create a wiggle.
    • You could also oscillate the Noise Frequency up and down a little.
  3. Use a Paint Effects brush. If you assign a Paint Effects brush to the toon line, you can then use the full set of attributes on the brush node. The pfxToon node overrides a few of these attributes, although for simplicity it has an internal default brush and does not show the full set of Paint Effects attributes.
    • You can use watercolor brush strokes and so on; when doing this, it is a good idea to use Resample Profile and set the Min/Max Segment Length to the same value. This will result in better coherence in the lines as they change.
    • One technique to use some of the brush displacement attributes is to create a single tube, but force it to follow the stroke path:

    Tubes = on

    Tube Completion = off

    Tubes Per Step = 0

    Start Tubes = 1.0

    Path Follow = 1.0

    Segments = the largest number of segments in any of your lines or more

    You can then play with displacement values such as Noise, and world Displacement turbulence. Then increase the turbulence speed for an animated wiggle.

    If desired you can layer multiple toon lines on the same object, each with a different brush. The Draw Order (under Stroke attributes) can be used to set the order of these different strokes; for example, creating a pencil line on top of a watercolor smear or blur.

  4. Create a toon line using the Offset Mesh option for Profile Lines and turn off Border and Crease lines.
    • Assign your shader to the resulting offset mesh and turn on Double Sided (Render Stats section of the mesh’s Shape Attribute Editor). You will have to select the offset mesh in Outliner because it is not pickable in the scene and then turn off Enable Overrides (Object Display section of the Attribute Editor).
    • Hide your original mesh. By texturing the line offset or width on the toon shader you now have a displacement to polygon with construction history.
    • You can animate the displacement in the same way as described in the first technique. A toon line can then be assigned to this wiggling displaced mesh.