Mesa (master): i965: Ignore anisotropic filtering in nearest mode.

Dylan Baker dbaker at kemper.freedesktop.org
Mon Jun 19 17:10:05 UTC 2017


Module: Mesa
Branch: master
Commit: 6a7c5257cac23cd9767aa4bc8fdab68925b11157
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6a7c5257cac23cd9767aa4bc8fdab68925b11157

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Sun May  1 19:09:14 2016 -0700

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 <kenneth at whitecape.org>
Tested-by: Dylan Baker <dylan at pnwbakers.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Cc: 17.1 <mesa-stable at lists.freedesktop.org>

---

 src/mesa/drivers/dri/i965/brw_sampler_state.c | 6 ++++--
 1 file 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 5d57a35f20..26bf0cb3e2 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 =




More information about the mesa-commit mailing list