Graphics Reference
In-Depth Information
In addition to a distance-based metric or a
screen-space-size metric, we must also consider
the high resolution geometry. When geometry is
introduced into the model, we also want to en-
sure that there is adequate detail in the displace-
ment map before increasing the number of ver-
tices to be processed. If the displacement map
at a particular surface location has a low level
of detail, the amount of tessellation can be re-
duced. Conversely, if there is a large amount of
detail in the displacement map at a given loca-
tion, we want to increase the tessellation level.
This is depicted in Figure 8.15.
Figure 8.15. A profile view of a displace-
ment map, and how much tessellation would
be appropriate for each region.
Displacing Surfaces
Once we have chosen the appropriate technique for determining the required amount of
tessellation, we can consider how to displace the tessellated vertices. The displacement
function actually doesn't need to know the method that was used to determine the tes-
sellation level; it is only concerned with taking a vertex location and finding the required
displacement to apply. This operation is slightly more complicated than it may initially
seem, because we are applying a flat texture to a semi-flat triangle mesh. Since neighbor-
ing triangle faces are typically not coplanar, there is at least some change in orientation
between them. This makes it impossible to perform a simple displacement away from the
surface due to either a gap or an overlap at the transition between faces. This is shown in
Figure 8.16.
In some respects, this is why normal vectors are specified for each vertex, instead
of for each triangle. The triangle mesh is an approximation of a smooth surface. Thus, the
vertex normal vectors are used to make surface lighting appear smoother than it really is by
Figure 8.16. A profile of a triangle mesh,
showing that non-coplanar triangles can't
use simple surface offsets.
Figure 8.1 7. Using vertex normal vectors for
displacing tessellation-generated vertices.
Search WWH ::




Custom Search