-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 11/18/2011 03:55 PM, Kenneth Graunke wrote: > On 11/18/2011 01:52 PM, Chad Versace wrote: > [snip] >> @@ -335,23 +338,18 @@ intel_miptree_get_image_offset(struct >> intel_mipmap_tree *mt, >> GLuint level, GLuint face, GLuint depth, >> GLuint *x, GLuint *y) >> { >> - switch (mt->target) { >> - case GL_TEXTURE_CUBE_MAP_ARB: >> - *x = mt->level[level].slice[face].x_offset; >> - *y = mt->level[level].slice[face].y_offset; >> - break; >> - case GL_TEXTURE_3D: >> - case GL_TEXTURE_2D_ARRAY_EXT: >> - case GL_TEXTURE_1D_ARRAY_EXT: >> - assert(depth < mt->level[level].nr_images); >> - *x = mt->level[level].slice[depth].x_offset; >> - *y = mt->level[level].slice[depth].y_offset; >> - break; >> - default: >> - *x = mt->level[level].slice[0].x_offset; >> - *y = mt->level[level].slice[0].y_offset; >> - break; >> + int slice; >> + >> + if (face > 0) { >> + assert(face < 6); >> + assert(depth == 0); >> + slice = face; >> + } else { >> + slice = depth; >> } > > I find the face > 0 check confusing. For cube face 0, you're falling > through to the array case and relying the fact that depth == 0 for > cubemaps. Yes, it works, but...bizarre. > > You're also relying on depth == 0 for non-cube/non-array cases, but that > seems entirely reasonable to me. > > Perhaps just change the (face > 0) check to (mt->target == > GL_TEXTURE_CUBE_MAP)? That seems clear enough.
If it looks bizarre to you, it will likely look bizarre to others too. I dislike bizarre code, so I'll change this with your (mt->target = GL_TEXTURE_CUBE_MAP) suggestion. > > Technically you could just drop the changes in this function (they're > not necessary), but I do like the cleanup. True that it's not really needed. I cleaned it up because it seemed that the old code did a lot of special-casing for no good reason. - ---- Chad Versace chad.vers...@linux.intel.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQIcBAEBAgAGBQJOxvWdAAoJEAIvNt057x8iq5YP/REghGtNAaYC7hKdnfeuCYU7 LGHF728d57q0wzntZT+h0bOdXZh4hhRXXFaxYHniLovBLufUOLnLG2BUrz2aFqzq QcRWqRx6KKoe/9Fy7iq4fAS5+DEoNNidLnLkBsIKcOuEgUtXYLXRIkhtxV3ZkKyA 9ahk30aA+jbaTK7allTMX52+JLs3pkdClALOykkWhKocAPskWa4a/fW44KKq4ASq 0bYcQeb5Behu0GGCKF8hfNtblxsNYUBWMLgAgPKN8MSaMZocLbw+VZOuv7ENz3zh CcN4BIIMXoFrwrvaSaNFmLJVwbuFK0qtTpIeNFbrVmIQh+tEgEuXhPkkXmpAYhym 0akN/eV8yNVwClhM4XGEw0firvdm6cTJKImOX+nvgJUVMP+Ll2clpYjNDPnfKPp6 +v/e6PWOjxjht/go07ED+vWuk46mr/eEQ4ZIzlkN2RF1mgd6Yc/hGpM38M3yOEet 6zNvrtfKzi0mMgvm5ZAxPpAvDUpvbzrKP/3UaNJN3NrWlVpBt/q3eb/jpd8HFEq6 w2fYSrX4g+X+PLT/k+14XXeEQxhLD9E5pv5AQyus0jlBhatbAGm7RbMmqgsiOdE/ bAFIhE4T7Ra6VQG4LUzOfl2xhewojz0g5FDQT6LDr1FkKWs/hpZx286AzCS2vDki mGbS0DPxKXLdTD8IGKuo =bkdP -----END PGP SIGNATURE----- _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev