pfxToonShape node
 
 
 

This node is created whenever you assign toon lines to a selection ( Toon > Assign Outline). When you edit the attributes in this node, you change the look of the toon lines on the geometry connected to this node. Below are descriptions of the attributes in this node. See also Types of toon lines.

Common Toon Attributes

These attributes are in the Common Toon Attributes section of the pfxToon node.

Display In Viewport

Turns on and off the display of toon lines. On by default.

NoteTurning off Display In Viewport has no effect on profile lines set to Offset Mesh.
Profile Lines

Specifies the mode for profile lines: Off, Paint Effects, or Offset Mesh.

If Paint Effects lines are used, then curves following the outline are constructed; these lines are relative to the view and therefore Maya rebuilds them when the view changes.

If Offset Mesh lines are used, an output mesh is generated that is displaced along the surface normal by the line width and set to single-sided with reversed facing. This creates a shell that results in an outline (or silhouette) when rendered with the original mesh, although no true line is ever generated. This has the advantages of built-in thick/thin line properties that are stable when animated, and it does not need to be updated when the view changes. It will also appear in raytraced reflections and refractions.

The pfxToon node contains various attributes to control the appearance of profile lines. For details, see Profile Lines.

Border Lines

Specifies how to generate lines along boundaries. Open Edges are considered to be edges that are shared by only one face, which, for example, can be used to create lines around the border of a simple plane. Profile lines do not handle this sort of edge, which only occurs when the surface is not fully closed. Shader Boundary edges occur where the faces attached to the edge do not share the same shader. The pfxToon node contains various attributes to control the appearance of border lines. For details, see Border Lines. Shader Boundary edges occur where the faces attached to the edge do not share the same shader. Edge and Shader Boundary are both attributes applied to the border lines.

Crease Lines

If turned on, lines are generated along internal hard edges. The pfxToon node contains various attributes to control the appearance of crease lines. For details, see Crease Lines.

Intersection Lines

Off by default. Turn it on to display intersection lines. For more information about intersection lines, see Adding toon lines and shading to a scene. The pfxToon node contains various attributes to control the appearance of intersection lines. For details, see Intersection Lines.

Line Width

Controls the global width of the profile, crease and boundary lines.

Line Width Map

Varies Line Width with a 2D texture map. This attribute scales the currently defined Line Width, but by two times the Line Width Map value, so that a value of 0.5 has no effect. Where the texture value is 0.25 the line width would be half of the Line Width attribute value and where the value is 1.0 the value would be double. Values outside the zero-to-one range can also be used (for file textures this generally requires increasing the alpha gain on the texture). The texture is mapped onto the UV space of the surface the lines are on. In addition to thick and thin effects, you can also block line formation entirely in places by using a zero texture value.

Note3D, projective 2D, and environment textures are not supported.
Line Offset

Offsets lines along the surface normal. The amount of offset is relative to the Line Width. With a value of 1.0, the line just touches the surface and with a value of 0 the line is half intersecting the surface.

Line Offset Map

Varies Line Offset with a 2D texture map. If a noisy texture is used, this can create a wiggly line. This attribute scales the currently defined line offset. Where the texture value is 0.5 the Line Offset is half the Line Offset attribute value. The texture is mapped into UV space of the surface the lines are on.

Note3D, projective 2D, and environment textures are not supported.

Line End Thinning

Controls the distance from line ends beyond which they become fully thick. Depending on the object you might need to lower the Profile Break Angle values in order to see open line ends. For most surfaces the profile lines form closed lines with no open ends. The continuation of the profile is sometimes hidden where it goes behind the object. It may therefore look like it has open ends even though it is closed and will not show the effect of Line End Thinning. Crease lines are more likely to show open ends than profile or border lines. You can use the break angles to create open ends where the line curves strongly.

Line Extend

Extends the ends of lines so they cross at corners rather than simply intersecting. Line Extend simulates a pencil drafting style of line. Just like Line End Thinning, depending on the object you might need to lower the Profile Break Angle values in order to see open line ends. For most surfaces the profile lines form closed lines with no open ends. The continuation of the profile is sometimes hidden where it goes behind the object. It may therefore look like it has open ends even though it is closed and will not show the effect of Line Extend. Crease lines are more likely to show open ends than profile or border lines. You can use the break angles to create open ends where the line curves strongly.

Line Opacity

Controls the opacity of the profile, crease and boundary lines. An opacity of 0 is fully transparent and an opacity of 1 is fully opaque.

Line Opacity Map

Varies the line opacity with a 2D texture map. This attribute scales the currently defined line opacity, so where the texture value is 0.5 the line opacity would be half of the Line Opacity attribute value. The texture is mapped into the UV space of the surface the lines are on.

Note3D, projective 2D, and environment textures are not supported.
Lighting Based Width

This attribute is useful for creating a thick/thin effect for line modulation. The line width is scaled by the diffuse light intensity. Brighter regions have thin lines. Shadowed and dark regions have full-width lines. Using negative values can have the reverse effect. The lighting used is a diffuse illumination that is relative to the local surface normal.

Occlusion Width Scale

This option is for Paint Effects profile lines only, and doesn’t apply to Offset Mesh profile lines.

The center of the Paint Effects brush stamp that generates a profile line is located at the surface of an object. When this option is off, the inside part of the brush stroke that is occluded (hidden) by the surface is not rendered. This occlusion results in a smooth inside line edge—that is, the surface’s edge creates the inside brush stroke edge. Because it is based on the topology (geometry) of the surface, this edge may exhibit aliasing artifacts when rendered.

When this option is on, the entire brush stamp, including the inside part of it occluded by the surface, is rendered. A wider and more natural looking brush stroke results, with fewer aliasing artifacts.

Some known problems when this option is on include:

Profile Lines

These attributes are in the Profile Lines section of the pfxToon node.

Profile Color

The input color for the profile lines. This may be textured with 2D textures; the line color is then derived based on the color of the texture mapped to the surface.

NoteMapping 3D, projective 2D, and environment textures is not supported; however you could convert the toon lines to polygons and then apply a shader with 3D textures to the result.
Profile Line Width

A relative scale of the width of the profile, or silhouette lines.

Profile Width Modulation

Varies the width of profile lines relative to the view angle. If Smooth Profile is turned off, then Profile Width Modulation should not be used.

Profile Break Angle

The angle in degrees beyond which profile lines are broken. Line segments that are less than this angle, with respect to each other, are joined into lines. At a value of 0 all lines will be only one segment long. At a value of 180 all adjacent segments will be joined together into lines.

Depth Offset

Offsets profile lines along the view direction. This can help give lines a more graduated width where the profile is internal to the object.

Smooth Profile

If this setting is on, then the profile is computed based on the interpolated normals. If it is off, the profile curve exists only on polygon edges. The off state guarantees that the profile is always at the exact visible boundary, although it will jump in discreet steps as the view changes or the object deforms. With Smooth Profile turned on the profile changes in a smooth continuous fashion, but may creep in from edges in places where the surface is crudely triangulated. If all the geometry edges are hard, it will seem as though Smooth Profile is turned off.

Tighter Profile

This option can only be used if Smooth Profile is turned on. If Tighter Profile is turned on, then Smooth Profile will be a bit closer to the mesh profile edge, particularly in cases where the vertex normals do not match an edge orientation well. A primitive cone is a good example of this situation. Deriving the profile from the vertex normals does not work well in this case because the normals define more of a hump than a pointed cone. For a cone the Tighter Profile method will push the profile about halfway closer to the point of the cone. To fit closer than this, increase the subdivisions on the cone, or turn off Smooth Profile.

Crease Lines

These attributes are in the Crease Lines section of the pfxToon node.

Crease Color

The input color for crease lines. It may be textured with 2D textures; the line color is then derived based on the color of the texture mapped to the surface.

NoteMapping 3D, projective 2D, and environment textures are not supported; however you could convert the toon lines to polygons and then apply a shader with 3D textures to the result.
Crease Line Width

A relative scale of the width of the crease, or hard edge lines.

Crease Width Modulation

Varies the width of crease lines relative to the view angle.

Crease Break Angle

The angle in degrees beyond which crease lines are broken. Line segments that are less than this angle with respect to each other are joined into lines. At a value of 0 all lines will be only one segment long. At a value of 180 all adjacent segments will be joined together into lines.

Crease Angle Min

The start angle in degrees between faces beyond which creasing forms. Line thickness can be graduated between zero width at the minimum angle and going to full thickness at the maximum. At an angle of zero all edges will be drawn, if Hard Creases Only is turned off.

Crease Angle Max

The angle in degrees between faces beyond which crease line thickness is the maximum. At an angle of zero all edges will be drawn, if Hard Creases Only is turned off.

Hard Creases Only

If this option is turned on, creases are only generated along hardened edges.

Backfacing Creases

Turn this option off to prevent lines from being generated on creases that face away from the view. This option can only be used with crease lines, since profile lines are never on backfacing edges and border lines are along open edges which do not have a sense of side.

Border Lines

These attributes are in the Border Lines section of the pfxToon node.

Border Color

The input color for border lines. It may be textured with 2D textures; the line color is then derived based on the color of the texture mapped to the surface.

NoteMapping 3D, projective 2D, and environment textures are not supported; however you could convert the toon lines to polygons and then apply a shader with 3D textures to the result.
Border Line Width

A relative scale of the width of the border, or boundary lines.

Border Width Modulation

Varies the width of border lines relative to the view angle.

Border Break Angle

The angle in degrees beyond which border lines are broken. Line segments that are less than this angle with respect to each other are joined into lines. At a value of 0 all lines will be only one segment long. At a value of 180 any adjacent segments will be joined together into one line.

Remove Flush Borders

Removes borders where meshes touch and have matching normals.

Flush Tolerance

The maximum distance boundary CVs can be from each other when suppressing flush or common border lines.

Flush Angle Max

The maximum angle in degrees that boundary vertex normals can be from each other when suppressing flush or common border lines.

Intersection Lines

These are the attributes in the Intersection Lines section of the pfxToon node.

Intersection Color

The input color for intersection lines. It may be textured with 2D textures; the line color is then derived based on the color of the texture mapped to the surface.

NoteMapping 3D, projective 2D, and environment textures are not supported; however you could convert the toon lines to polygons and then apply a shader with 3D textures to the result.
Intersection Line Width

A relative scale of the width of the intersection lines.

Intersection Width Modulation

Varies the width of intersection lines relative to the view angle.

Intersection Break Angle

The angle in degrees beyond which intersection lines are broken. Line segments that are less than this angle with respect to each other are joined into lines. At a value of 0 all lines will be only one segment long. At a value of 180 all adjacent segments will be joined together into lines.

Intersection Angle Min

The start angle in degrees between faces beyond which intersection lines form. Line thickness can be graduated between zero width at the minimum angle, going to full thickness at the maximum. At an angle of zero all intersecting edges will be drawn. By varying the minimum and maximum intersection angles you can avoid lines along flush intersections, yet still have lines where the intersection angle is steeper.

Intersection Angle Max

The angle in degrees between faces beyond which intersection line thickness is the maximum. At an angle of zero all intersection lines will be drawn at full thickness.

Self Intersect

If this option is turned on, then lines are generated where surfaces intersect themselves.

Curvature Based Width Scaling

These attributes are in the Curvature Based Width Scaling section of the pfxToon node. For an example illustrating the use of Curvature Based Width Scaling, see Tips for working with toon shading.

NoteIf profile lines are showing, then Smooth Profile should be turned on. Resample Profile may also help with the Min Segment Length value increased.
Curvature Modulation

Varies the width of lines relative to the 3D curvature of the line. Use the Curvature Width graph to control how the curvature affects the line width.

Curvature Width

When Curvature Modulation is turned on, the Curvature Width graph controls how curvature affects line width. The input position sampled from the Curvature Width graph is the curvature, where the left of the graph is zero curvature (straight) and the right is fully bent at a 180 degree angle. The output value of the graph (vertical position) is then used to determine a scale factor for the current width. Thus if the graph is a horizontal line with a value of 1.0 the line width is unchanged. Where the graph is zero the line width will be zero.

Line Resampling

These attributes are in the Line Resampling section of the pfxToon node.

Resample Profile

The points along the profile are typically spaced at irregular distances, depending on the surface geometry. This is especially noticeable if you assign to the toon line a Paint Effects brush with the tubes turned on—the tubes may jump around as the scene is animated. Turning on Resample Profile causes the profile lines to be resampled at a uniform CV spacing, resulting in smoother strokes that jump less. The resample spacing needs to be small enough to avoid rounding corner edges.

Resample Crease

The points along the crease are normally spaced according to the size of polygon edges. For simple objects this may not provide enough CVs for effects like Line End Thinning. Using Resample Crease provides the ability to sample the crease lines with fewer or more CVs, as well as to fix the worldspace distance between curve CVs. This may make crease lines twitch when animated if Screen Space Resampling is not zero. The resample spacing needs to be small enough to avoid rounding corner edges.

Resample Border

The points along the border are normally spaced according to the size of polygon edges. For simple objects this may not provide enough CVs for effects like Line End Thinning. Using Resample Border provides the ability to sample the border lines with fewer or more CVs, as well as to fix the worldspace distance between curve CVs. This may make border lines twitch when animated if Screen Space Resampling is not zero. The resample spacing needs to be small enough to avoid rounding corner edges.

Resample Intersection

The points along the intersection are typically spaced at irregular distances. This is due to the way that triangles overlap along the edge.

This is especially noticeable if you assign to the toon line a Paint Effects brush with the tubes turned on; the tubes may jump around as the scene is animated. Turning on Resample Intersection causes the intersection lines to be resampled at a uniform CV spacing, resulting in smoother strokes that jump less. The resample spacing needs to be small enough to avoid rounding corner edges.

Min Segment Length

The smallest distance that is allowed between CVs on profiles when Resample Profile is turned on. If this is large the profile curve may be very crudely sampled. It is useful if you want an output, for example to polygon, where the number of segments is kept to a minimum. Also when combined with Screen Space Resampling it can be used to simplify distant profiles.

Max Segment Length

The maximum distance that is allowed between CVs on profiles when Resample Profile is turned on. If this is small there may be many CVs on a profile curve. If this value is very large the profile curve will have its original number of CVs, but uniformly distributed across the original curve. You may have rounded corners if the Max Segment Length is not low enough.

Screen Space Resampling

Controls the degree to which outline curve resampling is done in screenspace. When this is 1.0 the segments are a fixed distance apart in screenspace. When it is 0.0 the distances are fixed in worldspace. Between 1.0 and 0.0 these two sampling methods are interpolated. This can be used to have profile curves become simpler with distance. Also if you have a brush with tubes turned on and assigned to the toon line, the number of tubes will reduce with distance when this is greater than zero.

Screenspace Width Control

The attributes in the Screenspace Width Control section of the pfxToon node are identical to those in the Screenspace Width Control section (subsection of Brush Profile) in a Paint Effects brush’s Attribute Editor. For descriptions of these attributes, see Brush Profile in the Paint Effects, Artisan, and 3D Paint guide.

When Screenspace Width is turned off the Paint Effects toon lines appear thinner the further they are from the camera. But when it’s turned on, there is no difference in the Paint Effects toon line width no matter how near or far the line is from the camera; with Screenspace Width turned on the Min Pixel Width and Max Pixel Width are respected. Turn this option on to maintain the brush width at all depths in the scene. This option is useful in scenes where you want cartoon-like outlines that retain a fixed width.

The brush stroke width is normally in worldspace and it appears to be constant in the 3D world. Screenspace refers to the flat 2D world of the rendered image (like a paint canvas). When the width is defined in screenspace it is relative to the overall size of the image, and the width is constant despite the distance of the object.

Stroke Attributes

These attributes are in the Stroke Attributes section of the pfxToon node. All of these except Pfx Randomize are standard stroke attributes found in the strokeShape node.

Display Quality

Sets the display quality of the wireframe for the selected strokes. See strokeShape node in the Paint Effects, Artisan, and 3D Paint guide.

Draw As Mesh

Previews the rendered look of your strokes interactively. See strokeShape node in the Paint Effects, Artisan, and 3D Paint guide.

Seed

Sets the sequence of random numbers used for randomized brush attributes. See strokeShape node in the Paint Effects, Artisan, and 3D Paint guide.

Draw Order

Sets the order that strokes paint in the scene. See strokeShape node in the Paint Effects, Artisan, and 3D Paint guide.

Surface Offset

Sets the distance (in world units) you want the next stroke offset from the object or plane you paint the stroke on. See Paint Effects > Paint Effects Tool Paint Effects > Paint Effects Tool in the Paint Effects, Artisan, and 3D Paint guide.

Pfx Randomize

If this option is turned on, then each curve is given a new random seed for Paint Effects. This requires that you have a pfx brush with tubes turned on and assigned to the toon line. Profile line tubes may jump around if this is on when animated.

Control Curves

These attributes are in the Control Curves section of the pfxToon node. For details on these attributes and how to use them, see Modify tube behavior using control curves in the Paint Effects, Artisan, and 3D Paint guide.

If a brush with tubes turned on is assigned to toon lines, then Paint Effects control curves can shape tube direction. For example, you can create motion streaks from profile lines.

Mesh Output

These attributes are in the Mesh Output section of the pfxToon node, and are also found in the strokeShape node. See strokeShape node in the Paint Effects, Artisan, and 3D Paint guide.

NURBS Output

These attributes are in the NURBS Output section of the pfxToon node, which are also found in the strokeShape node. See strokeShape node in the Paint Effects, Artisan, and 3D Paint guide.

Render Stats

These attributes are in the Render Stats section of the pfxToon node. For details on these attributes, see Render Stats in the Rendering guide.