Anisotropic Filtering


Anisotropic has been a bit of a frustration for us because while it is very easy to do (it’s really just a flag to DirectX), the compatibility issue I mentioned before made it a pain to actually get it in to the control.  It’s a shame we couldn’t turn it on by default, but at least it’s there.  The effect of it is really quite dramatic, as you can see below.  I took these images at this location, near the 405 and 90 interchange in Bellevue.


With anisotropic filtering enabled:


Anisotropic filtering


Without:


Trilinear Filtering


To turn it on in the website, click “options” in the upper right corner, then “3D settings”, and finally check “Use anisotropic filtering”.  To turn it on in code:


plugIn.Host.RenderEngine.Graphics.Settings.UseAnisotropicFiltering = true;


These settings are remembered in the user.config file for future runs of the control.  The perf penalty for this on cards that are even remotely modern is almost zero, so go turn it on now!

Comments (3)

  1. MichaelGG says:

    If the cards with problems are "old and rare", couldn’t you blacklist them? Or at least whitelist lines of good, newer, common cards?

  2. NikolaiF says:

    MichaelGG:

    Sure.  Lots of software, games especially, do just that.  Drivers are also supposed to report their own capabilities, but the problem is that they sometimes don’t tell the truth, or only support something partially, or only support it in software (I’m speaking generally, not just about anisotropic filtering).  So you end up having to research, track, and support a potentially very large matrix of driver versions and hardware.  I’m certain that there are ways of doing this well, but we decided not to go down that route.  In this case it’s a bit of a bummer, but it’s always a time/benefit calculation.

    BTW, graphics hardware and driver compatibility is not my area, so while I think what I’m saying is at least generally true, I am not an authority on the subject and shouldn’t be taken as such 🙂