From 4b377ae292f75645ef356bd3bfac407230faf73a Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 29 Oct 2009 13:35:03 -0700 Subject: i915: Correct and make use of the defines for 32-bit depth texture modes. Previously, S8_Z24 depth textures would always be treated as intensity. Fixes piglit depth-tex-modes. --- src/mesa/drivers/dri/i915/i915_texstate.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/mesa/drivers/dri/i915/i915_texstate.c') diff --git a/src/mesa/drivers/dri/i915/i915_texstate.c b/src/mesa/drivers/dri/i915/i915_texstate.c index 1397f04a59..0c29c558ec 100644 --- a/src/mesa/drivers/dri/i915/i915_texstate.c +++ b/src/mesa/drivers/dri/i915/i915_texstate.c @@ -82,7 +82,12 @@ translate_texture_format(gl_format mesa_format, GLuint internal_format, case MESA_FORMAT_RGBA_DXT5: return (MAPSURF_COMPRESSED | MT_COMPRESS_DXT4_5); case MESA_FORMAT_S8_Z24: - return (MAPSURF_32BIT | MT_32BIT_xI824); + if (DepthMode == GL_ALPHA) + return (MAPSURF_32BIT | MT_32BIT_x8A24); + else if (DepthMode == GL_INTENSITY) + return (MAPSURF_32BIT | MT_32BIT_x8I24); + else + return (MAPSURF_32BIT | MT_32BIT_x8L24); default: fprintf(stderr, "%s: bad image format %x\n", __FUNCTION__, mesa_format); abort(); -- cgit v1.2.3