Adam K Kirchhoff wrote:
I've narrowed down this problem to something that changed in Mesa
between the 5th of December and the 11th, when I first noticed this
problem. I have a system at work with a 9800. I started up NWN (after
first initializing the card with the fglrx driver, of course), and the
textures looked just fine (though the fog problem still existed). The
drivers were built from CVS on the 5th. I upgraded it to what's
currently in CVS, started up NWN, and had the same texture problem.
On a quick glance (though I'm not familiar with that driver), it looks
to me like introducing texture rectangle caused mipmaps to be disabled
for compressed textures.
Roland
Index: r300_texstate.c
===================================================================
RCS file: /cvs/mesa/Mesa/src/mesa/drivers/dri/r300/r300_texstate.c,v
retrieving revision 1.35
diff -u -r1.35 r300_texstate.c
--- r300_texstate.c 5 Dec 2005 09:30:58 -0000 1.35
+++ r300_texstate.c 13 Dec 2005 14:33:29 -0000
@@ -370,9 +370,11 @@
* requires 64-byte aligned pitches, and we may/may not need the
* blitter. NPOT only!
*/
- if (baseImage->IsCompressed)
+ if (baseImage->IsCompressed) {
t->pitch =
(tObj->Image[0][t->base.firstLevel]->Width + 63) & ~(63);
+ t->size |=
((log2Width>log2Height)?log2Width:log2Height)<<R300_TX_SIZE_SHIFT;
+ }
else if (tObj->Target == GL_TEXTURE_RECTANGLE_NV) {
unsigned int align = blitWidth - 1;
t->pitch = ((tObj->Image[0][t->base.firstLevel]->Width *