On Sun, Oct 27, 2013 at 7:42 AM, Paul Berry <[email protected]> wrote: > On 18 October 2013 17:24, Anuj Phogat <[email protected]> wrote: >> >> Setting bilinear_filter flag in case of multisample blits with >> GL_LINEAR filter causes incorrect behavior in translate_dst_to_src() >> function. This broke Modern Warfare (1, 2 and 3) on SNB, IVB and HSW. >> >> Tested on SNB and IVB, no Piglit regressions. Trace file of the game >> (taken with apitrace) works fine with this patch. >> >> Cc: [email protected] >> Signed-off-by: Anuj Phogat <[email protected]> >> Reported-by: Armin K <[email protected]> >> --- >> src/mesa/drivers/dri/i965/brw_blorp_blit.cpp | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) > > > Reviewed-by: Paul Berry <[email protected]> > > BTW, I've taken the liberty of writing some piglit tests to make sure we > don't regress this functionality again in the future. I'll send them out to > the piglit list shortly. > I was planning to write few tests. Thanks for doing it Paul.
>> >> >> diff --git a/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp >> b/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp >> index 2b94e2d..7e436f7 100644 >> --- a/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp >> +++ b/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp >> @@ -2171,7 +2171,7 @@ brw_blorp_blit_params::brw_blorp_blit_params(struct >> brw_context *brw, >> wm_prog_key.x_scale = 2.0; >> wm_prog_key.y_scale = src_mt->num_samples / 2.0; >> >> - if (filter == GL_LINEAR) >> + if (filter == GL_LINEAR && src.num_samples <= 1 && dst.num_samples <= >> 1) >> wm_prog_key.bilinear_filter = true; >> >> /* The render path must be configured to use the same number of >> samples as >> -- >> 1.8.1.4 >> >> _______________________________________________ >> mesa-dev mailing list >> [email protected] >> http://lists.freedesktop.org/mailman/listinfo/mesa-dev > > _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
