English
Language : 

82845PE Datasheet, PDF (128/176 Pages) Intel Corporation – 82845GE Graphics and Memory Controller Hub (GMCH) and 82845PE Memory Controller Hub (MCH)
Functional Description
Vertex and Per Pixel Fogging
Fogging is used to create atmospheric effects (e.g., low visibility conditions) in flight simulator-
type games. It adds another level of realism to computer-generated scenes. Fog can be used for
depth cueing or hiding distant objects. With fog, distant objects can be rendered with fewer details
(less polygons), thereby improving the rendering speed or frame rate. Fog is simulated by
attenuating the color of an object with the fog color as a function of distance; the greater the
distance, the higher the density (lower visibility for distant objects). There are two ways to
implement the fogging technique: per-vertex (linear) fogging and per-pixel (non-linear) fogging.
The per-vertex method interpolates the fog value at the vertices of a polygon to determine the fog
factor at each pixel within the polygon. This method provides realistic fogging as long as the
polygons are small. With large polygons (e.g., a ground plane depicting an airport runway), the per-
vertex technique results in unnatural fogging.
The GMCH supports both types of fog operations, vertex and per pixel or table fog. If fog is
disabled, the incoming color intensities are passed unchanged to the destination blend unit.
Alpha Blending (Frame Buffer)
Alpha Blending adds the material property of transparency or opacity to an object. Alpha blending
combines a source pixel color (RsGsBs) and alpha(As) component with a destination pixel color
(RdGdBd) and alpha(Ad) component. Thus, for example, a glass surface on top (source) of a red
surface (destination) would allow much of the red base color to show through.
Blending allows the source and destination color values to be multiplied by programmable factors
and then combined via a programmable blend function. The combined and independent selection
of factors and blend functions for color and alpha is supported.
DXn and OGL Logic Ops
Both APIs provide a mode to use bitwise ops in place of alpha blending. This is used for rubber-
banding (i.e., draw a rubber band outline over the scene using an XOR operation). Drawing it again
restores the original image without having to do a potentially expensive redraw.
Color Buffer Formats: 8, 16, or 32 bits per pixel (Destination Alpha)
The Raster Engine supports 8-bit, 16-bit, and 32-bit Color Buffer formats. The bit format of Color
and Z are allowed to mix. The GMCH supports both double and triple buffering, where one buffer
is the primary buffer used for display and one or two are the back buffer(s) used for rendering.
The frame buffer of the GMCH contains at least two hardware buffers—the Front Buffer (display
buffer) and the Back Buffer (rendering buffer). While the back buffer may actually coincide with
(or be part of) the visible display surface, a separate (screen or window-sized) back buffer is used
to permit double-buffered drawing. That is, the image being drawn is not visible until the scene is
complete and the back buffer made visible (via an instruction) or copied to the front buffer (via a
2D BLT operation). Rendering to one and displaying from the other removes the possibility of
image tearing. This also speeds up the display process over a single buffer. Additionally, triple back
buffering is also supported. The instruction set of the GMCH provides a variety of controls for the
buffers (e.g., initializing, flip, clear, etc.).
128
Intel® 82845GE/82845PE Datasheet