This problem was observed on an Intel X3100 graphics adapter (965GM chipset), using the i915 DRM driver. Mesa was version 7.0.1-7.fc8. This particular issue only shows up on my intel 965 hardware - the exact same code running on an Nvidia Geforce 6600 looks correct. I am working on an N64 emulator which programmatically generates fragment programs for rendering. Sometimes it defines an ATTRIB which is not used in any instructions later in the code, and in this case the color value for every fragment in a polygon is the same - I assume this is because the texture coordinates are not being updated. The following fragment program exhibits the error:
ATTRIB shade = fragment.color;
TEX t0, fragment.texcoord, texture, 2D;
TEX t1, fragment.texcoord, texture, 2D;
MOV comb.rgb, t0
MOV comb.a, t0
MOV result.color, comb;
When running this fragment program, the texture is not displayed correctly; only a single color is used for all fragments. To work around this bug, either use the 'shade' ATTRIB in an instruction (such as change 'MOV comb.a, t0' to 'MOV comb.a, shade') or remove the ATTRIB line.
This actually belongs under the Mesa product, in the DRI/i965 component. I believe this may be a duplicate of bug #10767.
This bug should be a duplicate of bug #10767, which has been fixed by haihao.
Mass version move, cvs -> git