Game Development Reference
Figure 1.10. Example of rendered viewable regions (a) without using and (b) using the
LOD Transition Algorithm described in this section.
The first optimization involved us separating the height calculation based on
whether we were using the algorithm to displace geometry, or to calculate the
surface normal. In the case of geometry displacement, we reduced the number of
accumulation iterations (octaves) in the algorithm. This resulted in a less detailed
displacement with the benefit of a moderate speed increase. To counteract the
loss of displacement detail, we let the surface normal calculation proceed with
a higher number of accumulation iterations (octaves). This resulted in greater
visual detail. Each application of the algorithm will have its own balance between
speed and detail, but the gains when finding the right balance can be significant.