From: Kenneth Graunke Date: Mon, 2 May 2016 02:09:14 +0000 (-0700) Subject: i965: Ignore anisotropic filtering in nearest mode. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6a7c5257cac23cd9767aa4bc8fdab68925b11157;p=mesa.git i965: Ignore anisotropic filtering in nearest mode. This fixes both Europa Universalis IV and Stellaris rendering on i965. This was tested on SKL. This fix was discovered by Jakub Szuppe at Stream HPC (https://streamhpc.com/). bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96958 bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95530 Signed-off-by: Kenneth Graunke Tested-by: Dylan Baker Reviewed-by: Jason Ekstrand Cc: 17.1 --- diff --git a/src/mesa/drivers/dri/i965/brw_sampler_state.c b/src/mesa/drivers/dri/i965/brw_sampler_state.c index 5d57a35f20f..26bf0cb3e2d 100644 --- a/src/mesa/drivers/dri/i965/brw_sampler_state.c +++ b/src/mesa/drivers/dri/i965/brw_sampler_state.c @@ -450,8 +450,10 @@ brw_update_sampler_state(struct brw_context *brw, /* Enable anisotropic filtering if desired. */ unsigned max_anisotropy = BRW_ANISORATIO_2; if (sampler->MaxAnisotropy > 1.0f) { - min_filter = BRW_MAPFILTER_ANISOTROPIC; - mag_filter = BRW_MAPFILTER_ANISOTROPIC; + if (min_filter == BRW_MAPFILTER_LINEAR) + min_filter = BRW_MAPFILTER_ANISOTROPIC; + if (mag_filter == BRW_MAPFILTER_LINEAR) + mag_filter = BRW_MAPFILTER_ANISOTROPIC; if (sampler->MaxAnisotropy > 2.0f) { max_anisotropy =