Bug#389289: libgl1-mesa-dri: R200 driver flips reflection cube maps

Dan Torop dtorop934 at gmail.com
Mon Sep 25 15:41:35 UTC 2006


Indeed, seems to be fixed in 6.5.1:

--- mesa-6.5.0.cvs.20060524/src/mesa/drivers/dri/r200/r200_texstate.c.orig
    2006-09-25 11:38:38.000000000 -0400
+++ mesa-6.5.0.cvs.20060524/src/mesa/drivers/dri/r200/r200_texstate.c
 2006-09-25 10:48:46.000000000 -0400
@@ -1304,11 +1304,13 @@
    case GL_REFLECTION_MAP_NV:
       rmesa->TexGenNeedNormals[unit] = GL_TRUE;
       tgi |= R200_TEXGEN_INPUT_EYE_REFLECT<<inputshift;
-      set_texgen_matrix( rmesa, unit,
-        (texUnit->TexGenEnabled & S_BIT) ? reflect : I,
-        (texUnit->TexGenEnabled & T_BIT) ? reflect + 4 : I + 4,
-        (texUnit->TexGenEnabled & R_BIT) ? reflect + 8 : I + 8,
-        I + 12);
+      /* pretty weird, must only negate when lighting is enabled? */
+      if (ctx->Light.Enabled)
+        set_texgen_matrix( rmesa, unit,
+           (texUnit->TexGenEnabled & S_BIT) ? reflect : I,
+           (texUnit->TexGenEnabled & T_BIT) ? reflect + 4 : I + 4,
+           (texUnit->TexGenEnabled & R_BIT) ? reflect + 8 : I + 8,
+           I + 12);
       break;

    case GL_NORMAL_MAP_NV:

Thank you!

Dan


On 9/25/06, Michel Dänzer <daenzer at debian.org> wrote:
> tags 389289 upstream fixed-upstream
> kthxbye
>
> On Sun, 2006-09-24 at 18:53 -0400, Dan Torop wrote:
> > Package: libgl1-mesa-dri
> > Version: 6.5.0.cvs.20060524-1.1
> > Severity: normal
> >
> > When using GL_ARB_texture_cube_map with the R200 DRI driver and
> > GL_REFLECTION_MAP_ARB, the generated texture coordinates are flipped
> > from what they should be.  That is, rotating the texture 180 degrees
> > around the X axis and then 180 degrees around the Y axis will result in
> > a "correct" image.
>
> This is fixed in Mesa CVS, not sure whether the fix went in before or
> after the 6.5.1 release though.
>
>
> --
> Earthling Michel Dänzer           |          http://tungstengraphics.com
> Libre software enthusiast         |          Debian, X and DRI developer
>




More information about the Pkg-mesa-devel mailing list