From: Ian Romanick Date: Tue, 17 Jan 2012 20:41:15 +0000 (-0800) Subject: intel: Set depth to 6 for cubemaps X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8a472427559ea33186c71dfbab8254651fec3077;p=mesa.git intel: Set depth to 6 for cubemaps Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41216 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43212 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=43250 Signed-off-by: Ian Romanick Reviewed-by: Chad Versace Reviewed-by: Kenneth Graunke Cc: Jin Yang --- diff --git a/src/mesa/drivers/dri/i915/i915_tex_layout.c b/src/mesa/drivers/dri/i915/i915_tex_layout.c index caa7127203b..1e3cfadddc8 100644 --- a/src/mesa/drivers/dri/i915/i915_tex_layout.c +++ b/src/mesa/drivers/dri/i915/i915_tex_layout.c @@ -129,7 +129,7 @@ i915_miptree_layout_cube(struct intel_mipmap_tree * mt) intel_miptree_set_level_info(mt, level, 0, 0, lvlWidth, lvlHeight, - 1); + 6); lvlWidth /= 2; lvlHeight /= 2; } @@ -337,7 +337,7 @@ i945_miptree_layout_cube(struct intel_mipmap_tree * mt) for (level = mt->first_level; level <= mt->last_level; level++) { intel_miptree_set_level_info(mt, level, 0, 0, - lvlWidth, lvlHeight, 1); + lvlWidth, lvlHeight, 6); lvlWidth /= 2; lvlHeight /= 2; } diff --git a/src/mesa/drivers/dri/i965/brw_tex_layout.c b/src/mesa/drivers/dri/i965/brw_tex_layout.c index 4c7e88ce770..7a1b91f3721 100644 --- a/src/mesa/drivers/dri/i965/brw_tex_layout.c +++ b/src/mesa/drivers/dri/i965/brw_tex_layout.c @@ -77,6 +77,7 @@ brw_miptree_layout(struct intel_context *intel, struct intel_mipmap_tree *mt) brw_miptree_layout_texture_array(intel, mt); break; } + assert(mt->depth0 == 6); /* FALLTHROUGH */ case GL_TEXTURE_3D: { @@ -101,7 +102,6 @@ brw_miptree_layout(struct intel_context *intel, struct intel_mipmap_tree *mt) pack_x_nr = 1; for (level = mt->first_level ; level <= mt->last_level ; level++) { - GLuint nr_images = mt->target == GL_TEXTURE_3D ? depth : 6; GLint x = 0; GLint y = 0; GLint q, j; @@ -110,8 +110,8 @@ brw_miptree_layout(struct intel_context *intel, struct intel_mipmap_tree *mt) 0, mt->total_height, width, height, depth); - for (q = 0; q < nr_images;) { - for (j = 0; j < pack_x_nr && q < nr_images; j++, q++) { + for (q = 0; q < depth; /* empty */) { + for (j = 0; j < pack_x_nr && q < depth; j++, q++) { intel_miptree_set_image_offset(mt, level, q, x, y); x += pack_x_pitch; }