i
i
i
i
i
i
i
i
168 6. Texturing
Area C has been subtracted twice, so it is added back in by the lower
left corner. Note that (x
ll
,y
ll
) is the upper right corner of area C, i.e.,
(x
ll
+1,y
ll
+ 1) is the lower left corner of the bounding box.
The results of using a summed-area table are shown in Figure 6.13. The
lines going to the horizon are sharper near the right edge, but the diagonally
crossing lines in the middle are still overblurred. Similar problems occur
with the ripmap scheme. The problem is that when a texture is viewed
along its diagonal, a large rectangle is generated, with many of the texels
situated nowhere near the pixel being computed. For example, imagine
a long, thin rectangle representing the pixel cell’s back-projection lying
diagonally across the entire texture in Figure 6.16. The whole texture
rectangle’s average will be returned, rather than just the average within
the pixel cell.
Ripmaps and summed-area tables are examples of what are called an-
isotropic filtering algorithms [518]. Such algorithms are schemes that can
retrieve texel values over areas that are not square. However, they are able
to do this most effectively in primarily horizontal and vertical directions.
Both schemes are memory intensive. While a mipmap’s subtextures take
only an additional third of the memory of the original texture, a ripmap’s
take an additional three times as much as the original. Summed-area tables
take at least two times as much memory for textures of size 16 ×16 or less,
with more precision needed for larger textures.
Ripmaps were available in high-end Hewlett-Packard graphics accelera-
tors in the early 1990s. Summed area tables, which give higher quality for
lower overall memory costs, can be implemented on modern GPUs [445].
Improved filtering can be critical to the quality of advanced rendering tech-
niques. For example, Hensley et al. [542, 543] provide an efficient imple-
mentation and show how summed area sampling improves glossy reflec-
tions. Other algorithms in which area sampling is used can be improved
by SAT, such as depth of field [445, 543], shadow maps [739], and blurry
reflections [542].
Unconstrained Anisotropic Filtering
For current graphics hardware, the most common method to further im-
prove texture filtering is to reuse existing mipmap hardware. The basic idea
is that the pixel cell is back-projected, this quadrilateral (quad) on the tex-
ture is then sampled a number of times, and the samples are combined.
As outlined above, each mipmap sample has a location and a squarish area
associated with it. Instead of using a single mipmap sample to approximate
this quad’s coverage, the algorithm uses a number of squares to cover the
quad. The shorter side of the quad can be used to determine d (unlike in
mipmapping, where the longer side is often used); this makes the averaged
area smaller (and so less blurred) for each mipmap sample. The quad’s