summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2016-05-01 19:09:14 -0700
committerDylan Baker <[email protected]>2017-06-19 10:09:06 -0700
commit6a7c5257cac23cd9767aa4bc8fdab68925b11157 (patch)
treef4e1567d84c857c36395f1f1b7973412587041ba
parentb70d6a2de1c90409c7a2e0d6484f350558f5c2ac (diff)
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 <[email protected]> Tested-by: Dylan Baker <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Cc: 17.1 <[email protected]>
-rw-r--r--src/mesa/drivers/dri/i965/brw_sampler_state.c6
1 files changed, 4 insertions, 2 deletions
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 =