diff options
| author | Eric Anholt <eric@anholt.net> | 2007-12-17 14:28:54 -0800 | 
|---|---|---|
| committer | Eric Anholt <eric@anholt.net> | 2007-12-17 14:28:54 -0800 | 
| commit | 2c9e515d8607fb91f08c500a841cdf7f32bda346 (patch) | |
| tree | 3a1319c1b2cfbd35511df1811c4bf74eb45687e3 | |
| parent | 98d43552408045e34ba937913cfbad7aadee8213 (diff) | |
[965] Replace our own depth constants in intel context with GL context ones.
| -rw-r--r-- | src/mesa/drivers/dri/i965/brw_sf_state.c | 8 | ||||
| -rw-r--r-- | src/mesa/drivers/dri/i965/intel_blit.c | 2 | ||||
| -rw-r--r-- | src/mesa/drivers/dri/i965/intel_context.c | 7 | ||||
| -rw-r--r-- | src/mesa/drivers/dri/i965/intel_context.h | 4 | 
4 files changed, 6 insertions, 15 deletions
| diff --git a/src/mesa/drivers/dri/i965/brw_sf_state.c b/src/mesa/drivers/dri/i965/brw_sf_state.c index 5a0106f77e..8891693e87 100644 --- a/src/mesa/drivers/dri/i965/brw_sf_state.c +++ b/src/mesa/drivers/dri/i965/brw_sf_state.c @@ -38,6 +38,8 @@  static void upload_sf_vp(struct brw_context *brw)  { +   GLcontext *ctx = &brw->intel.ctx; +   const GLfloat depth_scale = 1.0F / ctx->DrawBuffer->_DepthMaxF;     struct brw_sf_viewport sfv;     memset(&sfv, 0, sizeof(sfv)); @@ -47,14 +49,14 @@ static void upload_sf_vp(struct brw_context *brw)        /* _NEW_VIEWPORT, BRW_NEW_METAOPS */        if (!brw->metaops.active) { -	 const GLfloat *v = brw->intel.ctx.Viewport._WindowMap.m; +	 const GLfloat *v = ctx->Viewport._WindowMap.m;  	 sfv.viewport.m00 =   v[MAT_SX];  	 sfv.viewport.m11 = - v[MAT_SY]; -	 sfv.viewport.m22 =   v[MAT_SZ] * brw->intel.depth_scale; +	 sfv.viewport.m22 =   v[MAT_SZ] * depth_scale;  	 sfv.viewport.m30 =   v[MAT_TX];  	 sfv.viewport.m31 = - v[MAT_TY] + brw->intel.driDrawable->h; -	 sfv.viewport.m32 =   v[MAT_TZ] * brw->intel.depth_scale; +	 sfv.viewport.m32 =   v[MAT_TZ] * depth_scale;        }        else {  	 sfv.viewport.m00 =   1; diff --git a/src/mesa/drivers/dri/i965/intel_blit.c b/src/mesa/drivers/dri/i965/intel_blit.c index 4778d48efd..37c572c228 100644 --- a/src/mesa/drivers/dri/i965/intel_blit.c +++ b/src/mesa/drivers/dri/i965/intel_blit.c @@ -381,7 +381,7 @@ intelClearWithBlit(GLcontext *ctx, GLbitfield mask)     clear_depth = 0;     if (mask & BUFFER_BIT_DEPTH) { -      clear_depth = (GLuint)(ctx->Depth.Clear * intel->ClearDepth); +      clear_depth = (GLuint) (fb->_DepthMax * ctx->Depth.Clear);     }     if (mask & BUFFER_BIT_STENCIL) { diff --git a/src/mesa/drivers/dri/i965/intel_context.c b/src/mesa/drivers/dri/i965/intel_context.c index f5b4961895..bc59b49614 100644 --- a/src/mesa/drivers/dri/i965/intel_context.c +++ b/src/mesa/drivers/dri/i965/intel_context.c @@ -524,17 +524,10 @@ GLboolean intelInitContext( struct intel_context *intel,     switch(mesaVis->depthBits) {     case 0:			/* what to do in this case? */     case 16: -      intel->depth_scale = 1.0/0xffff;        intel->polygon_offset_scale = 1.0/0xffff; -      intel->depth_clear_mask = ~0; -      intel->ClearDepth = 0xffff;        break;     case 24: -      intel->depth_scale = 1.0/0xffffff;        intel->polygon_offset_scale = 2.0/0xffffff; /* req'd to pass glean */ -      intel->depth_clear_mask = 0x00ffffff; -      intel->stencil_clear_mask = 0xff000000; -      intel->ClearDepth = 0x00ffffff;        break;     default:        assert(0);  diff --git a/src/mesa/drivers/dri/i965/intel_context.h b/src/mesa/drivers/dri/i965/intel_context.h index 583ef42166..b3846839ec 100644 --- a/src/mesa/drivers/dri/i965/intel_context.h +++ b/src/mesa/drivers/dri/i965/intel_context.h @@ -164,12 +164,8 @@ struct intel_context     GLubyte clear_chan[4];     GLuint ClearColor; -   GLuint ClearDepth; -   GLfloat depth_scale;     GLfloat polygon_offset_scale; /* dependent on depth_scale, bpp */ -   GLuint depth_clear_mask; -   GLuint stencil_clear_mask;     GLboolean hw_stencil;     GLboolean hw_stipple; | 
