[Mesa-dev] [PATCH] i965: Do not set bilinear_filter flag in case of multisample blits

Armin K. krejzi at email.com
Sat Oct 26 12:01:32 CEST 2013


On 10/20/2013 08:12 PM, Armin K. wrote:
> On 10/19/2013 02:24 AM, Anuj Phogat 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: mesa-stable at lists.freedesktop.org
>> Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
>> Reported-by: Armin K <krejzi at email.com>
> Tested-by: Armin K <krejzi at email.com>
> 
> This patch fixes the issue.

Can you commit this patch, or there are some other problems?

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=69078

>> ---
>>  src/mesa/drivers/dri/i965/brw_blorp_blit.cpp | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> 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
>>
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
> 



More information about the mesa-dev mailing list