From: Eric Anholt Date: Tue, 14 Jul 2009 21:49:03 +0000 (-0700) Subject: intel: Fix ClearDepth to not be affected by DepthRange. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=99d07d0f91ddd37926d08f4e7f10d55cac28d9a7;p=mesa.git intel: Fix ClearDepth to not be affected by DepthRange. Fixes new piglit depthrange-clear.c test. --- diff --git a/src/mesa/drivers/dri/intel/intel_clear.c b/src/mesa/drivers/dri/intel/intel_clear.c index 0d0cf39fde2..13b433dd175 100644 --- a/src/mesa/drivers/dri/intel/intel_clear.c +++ b/src/mesa/drivers/dri/intel/intel_clear.c @@ -143,7 +143,8 @@ intel_clear_tris(GLcontext *ctx, GLbitfield mask) GL_POLYGON_BIT | GL_STENCIL_BUFFER_BIT | GL_TRANSFORM_BIT | - GL_CURRENT_BIT); + GL_CURRENT_BIT | + GL_VIEWPORT_BIT); saved_active_texture = ctx->Texture.CurrentUnit; /* Disable existing GL state we don't want to apply to a clear. */ @@ -209,6 +210,11 @@ intel_clear_tris(GLcontext *ctx, GLbitfield mask) /* convert clear Z from [0,1] to NDC coord in [-1,1] */ dst_z = -1.0 + 2.0 * ctx->Depth.Clear; + /* The ClearDepth value is unaffected by DepthRange, so do a default + * mapping. + */ + _mesa_DepthRange(0.0, 1.0); + /* Prepare the vertices, which are the same regardless of which buffer we're * drawing to. */