From: Kenneth Graunke Date: Mon, 15 Aug 2011 19:04:37 +0000 (-0700) Subject: i965: Use proper texture alignment units for cubemaps on Gen5+. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=477b74e85be8e468c63af9f2f3fe788e486764ce;p=mesa.git i965: Use proper texture alignment units for cubemaps on Gen5+. In particular, S3TC compressed textures need align_h == 4. Fixes skybox errors in Quake 4 and FEAR. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34628 Signed-off-by: Kenneth Graunke --- diff --git a/src/mesa/drivers/dri/i965/brw_tex_layout.c b/src/mesa/drivers/dri/i965/brw_tex_layout.c index 46a417a08ed..b5d2cf31290 100644 --- a/src/mesa/drivers/dri/i965/brw_tex_layout.c +++ b/src/mesa/drivers/dri/i965/brw_tex_layout.c @@ -49,11 +49,14 @@ GLboolean brw_miptree_layout(struct intel_context *intel, switch (mt->target) { case GL_TEXTURE_CUBE_MAP: if (intel->gen >= 5) { - GLuint align_h = 2; + GLuint align_w; + GLuint align_h; GLuint level; GLuint qpitch = 0; int h0, h1, q; + intel_get_texture_alignment_unit(mt->format, &align_w, &align_h); + /* On Ironlake, cube maps are finally represented as just a series * of MIPLAYOUT_BELOW 2D textures (like 2D texture arrays), separated * by a pitch of qpitch rows, where qpitch is defined by the equation