When
Maya renders a NURBS surface, the object is tesselated
into triangles (polygons). Understanding tesselation
is crucial to clean silhouettes and patch boundary
relationships. There are several options for tesellation,
but this quick tutorial is dealing with multi-patch
models.

Above
we have a head built out of 198 patches as seen
in hardware shading. All of the patches have positional
and tangential continuity as well as matching
parameterization, being '0 to # spans', although
'0 to 1' works as well.

When
rendered with the default tesselation settings,
however, you can see the problem. Even though
the model is clean, the rendering is displaying
edge artifacts. This is due to the tesselation
settings. The default settings are tesselating
each patch with no regard to adjacent surfaces,
based on curvature tolerence. (ie the more curvature,
the higher the degree of tesselation). But the
defaults are clearly no good. What we must do
is, for each patch, turn on 'Explicit Tesselation'.
This allows the user to have manual control over
the tesselation in a much more intuitive fashion.

With
explicit tesselation on, we are given more options
for how the U and V directions of the surface
are tesselated. The default settings for U and
V mode are fine, being 'Per Span # of Isoparms'.
This means that the specified # is how that direction
is tesselated, where 1 for U and 1 for V should
have the geometry render just as it looks when
in shaded mode with the resolution set to 1. But
with the settings at 1 and 1, in the above image,
we are still seeing edge artifacts. This is because
'Use Chord Height Ratio' in on by default in the
Explicit Control options. This again uses curvature
to determine tesselation, therefore meaning that
the parameterization of the surface is pretty
much ignored. But with a multi-patch model, much
care is taken to make sure the edge parameterization
lines up, for a reason.

Once
Use Chord Height Ratio is turned off for all the
patches, with the Per Span settings still at 1
for U and V, we can see the the rendering is now
free of edge artifacts. The only remaining problem
is that the ears look a little chunky, as the
geometry is only being tesselated once between
each span.

So
finally, after setting the U and V settings to
3/3, we have a clean rendering.

A
useful tool to make sure your model's tesselation
is matching up at the edges, is to turn on Display
Object Tesselation for each patch. In the above
image, we are seeing the tesselation for the patches
when we reached the desired settings.

As
a final note, setting these parameters can be
time consuming. The above character has about
400 patches from head to toe, so setting the tesselation
patch by patch is no fun. A useful tool for this
situation, therefore, is located at Window/General
Editors/Attribute Spread Sheet. Select all the
patches for the character and click on the tesselation
tab. By selecting an entire column by clicking
on the column's tab, you can change values for
multiples nodes at the same time. Very handy.
