User's Manual

Intel® 815 Chipset: Graphics Controller PRM, Rev 1.0
R
234
The Intel
®
810 chipset implementation of Blend color/chroma key mode is, again, different than what
Microsoft eventually defined for DX7*. DX7* specifies that any contributing texels which match the key
must be replaced by black with zero alpha prior to application of the normal texture filter. The Intel
®
810
chipset implements a different function, where the output texel has it’s alpha value forced to zero if the
nearest neighbor texel sample matches the key (the color associated with this keyed-out texel is
UNDEFINED). If only non-nearest neighbor texels are found to match the key, those texels are
effectively replaced by the nearest neighbor color/alpha prior to application of the filter.
The Intel
®
815 chipset supports both blend modes. The default is the DX7* implementation.
Dword Bit Description
0 31:29 Client : 03h – Rendering Engine
28:24 3DStateMW : 1Dh
23:16 Instruction : 2h
15:0 DWORD_LENGTH : 1
1 31 Reserved: 00h
30 KeyedPixelControl Write Mask: 0 = Do not update; 1 = Update
29 KeyedPixelControl:
0 = OLD Algorithms (Intel
®
810 chipset Compatible)
If ‘killpix’ mode is enabled, then a pixel is killed if and only if the nearest texel is
keyed out.
If ‘killpix’ mode is disabled, then for any pixel that has a keyed out nearest texel,
the alpha value forced to 0. The contributed RGBA of any other texels that are
keyed out are replaced by the RGBA of the nearest texel and blended as usual.
1 = NEW Algorithms (DX6.1 Kill Pixel, DX7* Blend). Default.
If ‘killpix’ mode is enabled, then a pixel is killed if any of the texels contributing to
its color is keyed out.
If ‘killpix’ mode is disabled, then for any contributing texel which is keyed out,
R,G,B,A are forced to 0. Any such texel will still be blended with the other texels
as usual.
28 Kill Pixel Write Mask : 0 = Do not update; 1 = Update
27 Kill Pixel Write When Match on Key : 0 = Do not Kill Pixel; 1 = Kill Pixel
Enabling the Kill Pixel Write state prevents the pixel from being written into the
destination buffer independent of any alpha test.
26 Color Index Value Mask : 0 = Do not update; 1 = Update
25 ChromaKey Low Value Mask : 0 = Do not update; 1 = Update
24 ChromaKey High Value Mask : 0 = Do not update; 1 = Update
23:0 ChromaKey Low Value: This is a 24 bit value in RGB 888 format. Only the upper
5/6/5 bits of the RGB 888 color are compared against the texel colors.
2 31:24 Color Index Value : This is an 8 bit color index. The default value is 0.
23:0 ChromaKey High Value: This is a 24 bit value in RGB 888 format. Only the upper
5/6/5 bits of the RGB 888 color are compared against the texel colors.