From b17b110716936c32d20910cb9589038062b4f527 Mon Sep 17 00:00:00 2001 From: "Xiang, Haihao" Date: Wed, 20 Aug 2008 15:54:41 +0800 Subject: [PATCH] i965: Enable GL_ARB_fragment_program_shadow and fix key->shadowtex_mask. (bug #16852, #16853) --- src/mesa/drivers/dri/i965/brw_wm.c | 9 +++------ src/mesa/drivers/dri/intel/intel_context.c | 1 + 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c index 93ae8dc693b..361312c2ca1 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.c +++ b/src/mesa/drivers/dri/i965/brw_wm.c @@ -279,12 +279,6 @@ static void brw_wm_populate_key( struct brw_context *brw, const struct gl_texture_object *t = unit->_Current; if (unit->_ReallyEnabled) { - - if (t->CompareMode == GL_COMPARE_R_TO_TEXTURE_ARB && - t->Image[0][t->BaseLevel]->_BaseFormat == GL_DEPTH_COMPONENT) { - key->shadowtex_mask |= 1<Image[0][t->BaseLevel]->InternalFormat == GL_YCBCR_MESA) { key->yuvtex_mask |= 1<Image[0][t->BaseLevel]->TexFormat->MesaFormat == @@ -294,6 +288,9 @@ static void brw_wm_populate_key( struct brw_context *brw, } } + /* Shadow */ + key->shadowtex_mask = fp->program.Base.ShadowSamplers; + /* _NEW_BUFFERS */ /* * Include the draw buffer origin and height so that we can calculate diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c index 8a4d5d21142..50c1964d878 100644 --- a/src/mesa/drivers/dri/intel/intel_context.c +++ b/src/mesa/drivers/dri/intel/intel_context.c @@ -266,6 +266,7 @@ static const struct dri_extension brw_extensions[] = { { "GL_ARB_fragment_program", NULL }, { "GL_ARB_shadow", NULL }, { "GL_EXT_shadow_funcs", NULL }, + { "GL_ARB_fragment_program_shadow", NULL }, /* ARB extn won't work if not enabled */ { "GL_SGIX_depth_texture", NULL }, { "GL_EXT_texture_sRGB", NULL}, -- 2.30.2