The situation with anisotropic filtering is more difficult. First, ATI plays an unpleasant trick when anisotropy is forced from drivers. Filtering is only based on bilinear samples, so, despite a clearly increased sharpness, borders between MIP levels are unpleasantly obvious. While NVIDIA smoothes these borders with partial trilinear filtering (see pictures with coloured levels), ATI shows clear borders in all modes including Quality. But when filtering degree is set from the application and not forced from the drivers, things get back to normal. So, what's the matter? Such problems have been repeatedly observed in game applications. If an application can't manage anisotropy itself, it can be forced from driver settings, and everything will be OK. If an application can do it, then we disable anisotropy in the drivers and activate it from the application. But if anisotropy is activated in both the drivers and the application, we get sharp borders between MIP levels, annihilating all visual quality of anisotropic filtering.
However, despite the fact that the problem has been repeatedly discussed illustrated with real games, ATI doesn't rush to eliminate it, shifting the responsibility to users and bad applications. But I think you will agree that it would be much more convenient to users if they could enable anisotropy support in the drivers once and for all, instead of guessing whether it's present or absent in the application. And when needed, they could duplicate it in the application without changing driver settings every time. Remember Unreal/Unreal Tournament and the games based on these engines: the application knows about anisotropic filtering but the latter is nowhere to be enabled in the settings. We can guess how ATI cards will act in these games, considering the user can only enable anistropy through the driver.
There are no general obstacles to it, and that's exactly the way it works in NVIDIA: you enable anisotropy and then you can forget about it. But ATI experts are either too lazy to adjust this option or too busy with optimisation selection at different stages in the driver. It is known that thorough anisotropic filtering is mainly needed for the base texture and others can normally do with simpler filtering. But in order to optimise performance basing on this fact, drivers need to know which texture is the base one, and it not always possible. Perhaps, undesirable visual artefacts are caused by too optimistic heuristics in ATI drivers. So, be careful with forcing anisotropic filtering in ATI driver settings, because if the application can activate anisotropy through API too, you're running the risk of getting problems with quality. (We repeat once again that everything will be OK if the application knows nothing about anisotropy.)
Alexey Barkovoy's note: It is the control panel that is to blame for this in the case of ATI. If you move the Performance/quality slider from the 3D tab to the right and thus select AF/AA forcing, trilinear anisotropic filtering will always be selected in the first texture, and bilinear anisotropic filtering in others. And after you "play" a bit with the slider (select "use custom settings" again and than AF separately), everything will work all right and trilinear filtering won't disappear at anisotropy forcing.
Now we'll try to arrange the contestants. 4x APP, 0°:
4x APP, 30°:
4x APP, 45°:
Interestingly, NVIDIA shows good results at 30° (and other values non divisible by 45°) while ATI prefers divisible values. X800 looks a bit worse than 9800 at 30 and 45°.
8x APP, 0°:
8x APP, 30°:
8x APP, 45°:
The supposition that ATI dislikes complex angles (i.e. not divisible by 45°) which are important for uneven surfaces is confirmed.
16x APP, 0°:
Here, filtering degree is sufficient even for our tricky example, and we can't name the leader. Visually, the modes are almost the same, therefore, we have to base on performance.
16x APP, 30°:
16x APP, 45°:
NVIDIA shows some aliasing, but it is only typical of such tricky textures; in real applications, it will rather add clearness than do any harm. Anyway, it's all about identifying the LOD degree at which anisotropy gives maximal clearness without "going into dithering".
In the case of settings activated from drivers, NVIDIA shows a better quality everywhere, due to the above-mentioned way ATI drivers act:
ATI has to work on this aspect, as the problem lies in the driver heuristics and is not related to hardware.
There are only two noteworthy facts besides the mentioned problem with anisotropy forcedly installed in the applications that control it themselves. First, there are many cases where X800 shows a somewhat worse picture than RADEON 9800. Second, NVIDIA exceeds ATI at complex angles while ATI competes successfully with NVIDIA at simple ones, especially at 0° (walls, floor, ceiling) which is widely spread in classical FPSs. On the other hand, flight simulators and landscape games with complex reliefs will have a quality advantage on NVIDIA. Later on, we'll check these suppositions in game applications.
And now we're moving to Part Two that deals with the new Sapphire videocard based on a powerful X800 Pro.
[ Next part (4) ]
Andrey Vorobiev (firstname.lastname@example.org)
Alexander Medvedev (email@example.com)
Write a comment below. No registration needed!