3.5.4.8 Mip Mapped Texture Functions
 
When possible, it is always best to use Mip Mapping.  Rather than requiring the system to
perform all of its filtering of the texture on the fly to insure image quality, some of the filte ring
has already been performed up front.  There are also several modes of Mip Mapping, most of
which are no faster than the next-to-best mode, Bilinear Mip Mapped.  The available Mip
Mapping functions include:

o   Point Sampled

o   Linear Interpolated

o   Bilinear Interpolated

o   Trilinear Interpolated

While the Point Sampling operation is not really any different from that performed outside of
the Mip Map, there is one key difference.  When using Mip Mapping, the point sampling is
performed in the level of the Mip Map closest in size to the polygon being rendered, providing
much of the filtering before the point sampling is even performed.

As an example, if the current polygon were 20x20 pixels and the original texture was 428x128
texels, the system would automatically select the 32x32 texel Mip Map version of the original
texture as the level in which the sampling should occur.

One step better is the Linear Interpolation method.  In this process, texels are sampled from
the two levels of the Mip Map bordering the size of the polygon being rendered, then the two
independent texel colors are blended to add one more layer of filtering to the texture being
applied.

Going back to-the use of a single Mip Map layer, Bilinear Interpolation acts just like the non-
Mip Mapped function, except that it too performs its sampling and blending in the level of the
Mip Map closest in size to the polygon being textured.  This offers one layer of filtering beyond
that of the non-Mip Mapped Bilinear Interpolation function.

SkyWriter was optimized for this method of texture mapping and can perform Bilinear Mip
Mapping at 50M pixels/sec.  All of the other methods also perform at this speed, so unless it is
necessary to avoid Mip Mapping to use larger textures, this should be the preferred mode of
texturing.

If even higher fidelity texture mapping is desired or needed, SkyWriter also supports Trilinear
Interpolation.  This is the highest quality texture function available and may be found on most
of the newer high-end IGs.  Trilinear Interpolation simply performs two Bilinear Interpolations
in the two Mip Map levels bordering the size of the polygon being textured, then blends the
results of those interpolations for a total of 9 blends per pixel textured.
 

3.5.4.9 Texture Perspective Correction
 
When applying a texture to a polygon being viewed in perspective, it is necessary to correct the
texture to avoid "swimming" and "sparkling" artifacts.  On the earlier VGX systems, this was
achieved by having the system automatically subdivide the polygon vertically, but this had the
disadvantage of adding vertices and possibly diminishing the frame rate.

On SkyWriter, the new Image Engine processors perform per-pixel perspective correction to
assure the highest image quality While minimally impacting the system performance.