3D graphics eBook - Course Materials Repository
3D graphics eBook - Course Materials Repository
3D graphics eBook - Course Materials Repository
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Anisotropic filtering 9<br />
An improvement on isotropic MIP mapping<br />
Hereafter, it is assumed the reader is familiar with<br />
MIP mapping.<br />
If we were to explore a more approximate anisotropic<br />
algorithm, RIP mapping, as an extension from MIP<br />
mapping, we can understand how anisotropic filtering<br />
gains so much texture mapping quality. If we need to<br />
texture a horizontal plane which is at an oblique angle<br />
to the camera, traditional MIP map minification<br />
would give us insufficient horizontal resolution due to<br />
the reduction of image frequency in the vertical axis.<br />
This is because in MIP mapping each MIP level is<br />
isotropic, so a 256 × 256 texture is downsized to a 128<br />
× 128 image, then a 64 × 64 image and so on, so<br />
resolution halves on each axis simultaneously, so a<br />
MIP map texture probe to an image will always<br />
sample an image that is of equal frequency in each<br />
axis. Thus, when sampling to avoid aliasing on a<br />
high-frequency axis, the other texture axes will be<br />
similarly downsampled and therefore potentially<br />
blurred.<br />
An example of ripmap image storage: the principal image on the top<br />
left is accompanied by filtered, linearly transformed copies of reduced<br />
With RIP map anisotropic filtering, in addition to downsampling to 128 × 128, images are also sampled to 256 × 128<br />
and 32 × 128 etc. These *anisotropically* downsampled images can be probed when the texture-mapped image<br />
frequency is different for each texture axis and therefore one axis need not blur due to the screen frequency of<br />
another axis and aliasing is still avoided. Unlike more general anisotropic filtering, the RIP mapping described for<br />
illustration has a limitation in that it only supports anisotropic probes that are axis-aligned in texture space, so<br />
diagonal anisotropy still presents a problem even though real-use cases of anisotropic texture commonly have such<br />
screenspace mappings.<br />
In layman's terms, anisotropic filtering retains the "sharpness" of a texture normally lost by MIP map texture's<br />
attempts to avoid aliasing. Anisotropic filtering can therefore be said to maintain crisp texture detail at all viewing<br />
orientations while providing fast anti-aliased texture filtering.<br />
Degree of anisotropy supported<br />
Different degrees or ratios of anisotropic filtering can be applied during rendering and current hardware rendering<br />
implementations set an upper bound on this ratio. This degree refers to the maximum ratio of anisotropy supported<br />
by the filtering process. So, for example 4:1 (pronounced 4 to 1) anisotropic filtering will continue to sharpen more<br />
oblique textures beyond the range sharpened by 2:1.<br />
In practice what this means is that in highly oblique texturing situations a 4:1 filter will be twice as sharp as a 2:1<br />
filter (it will display frequencies double that of the 2:1 filter). However, most of the scene will not require the 4:1<br />
filter; only the more oblique and usually more distant pixels will require the sharper filtering. This means that as the<br />
degree of anisotropic filtering continues to double there are diminishing returns in terms of visible quality with fewer<br />
and fewer rendered pixels affected, and the results become less obvious to the viewer.<br />
When one compares the rendered results of an 8:1 anisotropically filtered scene to a 16:1 filtered scene, only a<br />
relatively few highly oblique pixels, mostly on more distant geometry, will display visibly sharper textures in the<br />
scene with the higher degree of anisotropic filtering, and the frequency information on these few 16:1 filtered pixels<br />
size.