ComputerBase

Bericht: nVidias G70 (Update 31.08.05)

von Wolfgang Andermahr

Einleitung

Der G70-Chip in Form der nVidia GeForce 7800 GTX [1]- und 7800 GT-Grafikkarte wurde zur Vorstellung von der gesamten Presse zurecht hoch bejubelt. Er ist schnell, bietet durch Transparency Anti-Aliasing eine wirksame und durchaus performante Bekämpfung gegen flimmernde Alpha-Test-Texturen und war direkt ab dem Tag der Präsentation erwerbbar. Eine Tatsache, die in letzter Zeit selten geworden ist.

Trotz aller Jubelschreie, die durchaus gerechtfertigt waren und sind, häufen sich jedoch wieder einmal die Beschwerden über eine weitere Verschlechterung der Texturqualität des anisotropen Filters. Und genau hier staunten wir etwas verwundert, immerhin hatte kein aktueller Artikel über die GeForce 7800 GTX über solch eine Problematik berichtet, was größtenteils sicherlich auch auf den enormen Zeitdruck zwischen dem Eintreffen der Karte und der Fertigstellung des Reviews zu erklären ist.


GeForce 7800-Logo
GeForce 7800-Logo

Wie dem auch sei, das Problem ist definitiv vorhanden. So erschien zum Beispiel vor einigen Tagen ein entsprechender Artikel [2] bei den Kollegen vom 3DCenter. Und die dortigen Ergebnisse sind leider kein Einzelfall, alle GeForce 7800 GTX-Käufer müssen mit einem verschlechterten anisotropen Filter gegenüber der Vorgängergeneration, dem NV4x, leben. Wir haben uns aus diesem Grund auf die Suche nach den neuesten Informationen gemacht und durchaus einiges interessante sowie wissenswerte Details herausgefunden, die wir hier in diesem Artikel aufarbeiten werden.

Bevor wir damit anfangen, möchten wir uns ganz herzlich bei Blaire aus dem 3DCenter-Forum bedanken, da er die passenden Videos sowie Screenshots geliefert hat. Ohne ihn wäre der Artikel in dieser Form nicht möglich gewesen. Der Dank geht ebenfalls an die Kollegen vom 3DCenter [3], die mit ihrem Filter-Artikel die passenden Videos geliefert haben.

Vorgeschichte

Bevor wir zur eigentlichen Problematik kommen, möchten wir zuerst einen kleinen Blick in die Vergangenheit werfen. Im Jahre 2002 präsentierte nVidia ihr neuestes Produkt, die GeForce 4 TI-Serie [4], bei welcher die Qualität des anisotropen Filters noch sehr gut – und gleichzeitig unerreichbar bei zukünftigen Karten – war.

Es gab eine (beinahe) vollkommen winkelunabhängige Texturfilterung, keine Optimierungen und die Wörter Flimmern sowie Bugwellen gehörten damals nicht zum Vokabular eines Kartenbesitzers. Dabei bot man deutlich mehr als die Konkurrenz in Form von ATi, die mit der Radeon 8500-Serie [5] zwar einen technologisch weit entwickelten Chip auf den Markt gebracht hatten, beim anisotropen Filter, kurz AF, mit einer winkelabhängigen und komplett bilinearen Filterung jedoch nur Hausmannskost anboten.

Anno 2003 schickte nVidia, nach einer langwierigen Verzögerung aufgrund von Fertigungsschwierigkeiten beim damals neuartigen 130-nm-Prozess, die GeForce FX [6] ins rennen, die allerdings aufgrund einiger Architekturprobleme in Pixel-Shader 2.0-Spielen ohne einen entsprechend angepassten Shader-Code (halbierte Genauigkeit: FP16 oder gar FX12) zu einer langsamen Schnecke mutiert. Trotz jener Schwierigkeiten bot die nVidia-Grafikkarte immer noch einen sehr guten Texturfilter, auch wenn die ersten Optimierungen – Stichwort „Brilinear“ – in Mode kamen, die man aber immerhin in den neueren Treibern wieder deaktivieren konnte.

Als der NV40 in Form der GeForce 6800 das Licht der Welt erblickte, kam fast durchgehend Begeisterung auf. Der Chip war extrem schnell, verfügte über modernste Techniken und die Shader 2.0-Schwäche des Vorgängers war vergessen. Vergessen war jedoch auch eine gute anisotrope Filterung, da der Chip erstmals bei nVidia auf einen winkelabhängigen Algorithmus setzte und man sich damit dem niedrigen Level von ATi angepasst hatte. Nichtsdestotrotz lieferten entsprechende Karten – wohlgemerkt nach „Erfindung“ des „Clamp-Schalters“ [7] – eine recht gute Texturfilterqualität, die nach Wunsch weder brilinear noch bilinear war und somit konnte und kann sich der NV40-Chip bei dem anisotropen Filter immer noch von der X800-Serie des Konkurrenten ATi absetzen.

Videoanalyse

Das bessere AF gegenüber den ATi-Karten scheint beim neuen G70-Chip von nVidia ebenfalls bereits Geschichte zu sein, zumindest berichten immer mehr Besitzer einer entsprechenden Karte und auch die Kollegen des 3DCenters [1] von einer unangenehmen Auffälligkeit bei der anisotropen Filterung einer solchen Karte. So haben die Kollegen nach mehreren Beschwerden der Käufer herausgefunden, dass durch das AF des G70-Chips je nach Spiel die Texturen massiv Flimmern. Dies tat zwar auch der Texturfilter des NV40, jedoch war es bei diesem möglich, mit Hilfe der High Quality-Einstellung das Flimmern in den meisten Spielen abzustellen oder notfalls massiv zu lindern. Jener Schalter ist auch noch bei einer GeForce 7800 vorzufinden, jedoch bringt er dort nicht mehr die erwünschte Wirkung. Selbst bei Hohe Qualität gibt es noch ein starkes Flimmern der Texturen, welches je nach Applikation als sehr störend einzuordnen ist.

Als Beweis und zur Verdeutlichung haben die Kollegen mit Hilfe des französischen Redakteurs Damien Triolet der Hardwareseite Hardware.fr [8] Videos zur Verfügung gestellt. Jene zeigen einen selbst erstellten Tunnel in dem Spiel Unreal Tournament 2003, bei welchem das Problem sehr stark auftritt. So neigt in den Videos bereits die GeForce 6800 in der Standard-Einstellung des ForceWare-Treibers (Quality mit aktivierter „Trilinearen Optimierung“ und „Optimierung des anisotropen Musters“) zum gut sichtbaren und störenden Flimmern, die GeForce 7800 setzt jedoch noch einen drauf. So tritt das Flimmern deutlich stärker auf und ist nun wohl auch für unempfindliche Menschen sichtbar.

Bei der High-Quality-Einstellung ist zwar ebenfalls ein Flimmern bei der GeForce 6800 zu erkennen, jedoch ist jenes nur noch in einem deutlich verminderten Zustand vorhanden und fällt beim aktiven Spielen kaum auf. Der G70 flimmert bei High Quality jedoch munter weiter, auch wenn es ebenfalls vermindert ist und somit filtert er insgesamt ein wenig besser, als dies in der Standard-Einstellung der GeForce 6800 der Fall ist. Nichtsdestotrotz wird die höchstmögliche Texturqualität einer GeForce 6800 nicht erreicht, was beweist, dass beim anisotropen Filter erneut Optimierung vorgenommen worden sind, die die Bildqualität weiter verschlechtern. Dieser Zustand ist unserer Meinung nach nur schwer nachvollziehbar und vor allem nicht verständlich. Die Texelfüllrate ist vor allem beim G70 extrem hoch, womit eine bessere Qualität des anisotropen Filters durchaus möglich wäre, ohne auch in höheren Settings unspielbare Frameraten zu erreichen.

Stattdessen verschlechtert man die Qualität – in der Hoffnung, dass es nicht auffällt und niemanden stört –, damit man in Benchmark-Werten (noch) besser dasteht als die ältere Generation und die Konkurrenz. Die aufgenommenen Videos der X800- und GeForce FX-Karte zeigen, dass es auch anders geht. Die X800 neigt nur sehr gering zum Flimmern, jedoch besitzt das AF auf entsprechenden Karten andere Nachteile [9] (Stichwort: Brilinear). Die GeForce FX kann man dagegen ganz klar als Referenz deklarieren: Kein Flimmern stört den Spielgenuss und auch alle Winkel werden, wie eingestellt, gefiltert – so muss es sein!

Der Grund und die Folgen

Warum dieses Flimmern nun verstärkt auf dem G70 auftritt, bleibt weiterhin leider unklar. Nach ersten Vermutungen könnte eine leichte Unterfilterung der Grund sein, jedoch wurde diese Theorie nach einigen Analysen von Ralf Kornmann, unter anderem freier Redakteur der PC Games Hardware, stark in Frage gestellt. So werden zwar alle anfallenden Daten korrekt aus der zu filternden Textur ausgelesen, jedoch werden sie falsch verrechnet, weswegen das Flimmern wahrscheinlich auftritt. Genauere Untersuchungen werden noch folgen müssen, um die Ursachen erklären zu können.

Woran es jedoch schlussendlich auch immer liegen mag, die Folgen sind klar: Das Vertrauen in nVidia, eine gute Hardware inklusive einen guten Texturfilter herzustellen, wurde erneut stark erschüttert. Die neue „Optimierung“ geht diesmal gar so weit, dass man erstmals qualitativ einen schlechteren anisotropen Filter als die Konkurrenzkarten von ATi anbietet. Als weitere Folge lässt sich festhalten, dass die bisherigen Benchmark-Werte der entsprechenden Karte NICHT vergleichbar mit den Werten der GeForce 6800 und X800 (samt kleinerer Versionen) sind, solange alle Karten mit den Standard-Einstellungen der Treiber getestet wurden. In diesem Fall liefert die GeForce 7800 – auch in unserem Artikel – die schlechteste Bildqualität und kann sich somit einen kleinen und vor allem unfairen Performancevorteil erkämpfen.

Anzumerken ist, dass der Flimmereffekt nicht ganz so stark auffällt, wie er in den Videos zu sehen ist. Aufgrund der Videoeigenschaften vergrößert sich das Problem der flackernden Texturen. Nichtsdestotrotz fallen sie auch in einem normalen Spiel auf. Weiterhin muss gesagt werden, dass einige Käufer aufgrund der Texturprobleme ihre ansonsten tadellose GeForce 7800 GTX wieder zurückgegeben haben. Andere sprechen von einer unnötigen Panikmache. Zwar fällt das Flackern definitiv stärker auf als bei einem NV4x, jedoch bezeichnen es einige 7800-Besitzer eher als ein leichtes Grieseln. Dies kann von Person zu Person unterschiedlich ausfallen und jeder potenzielle Käufer sollte sich den Texturfilter des G70-Chips vor dem Kauf einmal persönlich ansehen. Zudem halten wir UT 2003 auch nicht für das optimale Spiel, um Eigenschaften des anisotropen Filters zu untersuchen, denn die ATi- sowie die nVidia-Treiber erkennen das Spiel und benutzen, ohne dass man es abstellen kann, bereits verschiedene AF-Optimierungen.

Treiberspielerreien

Nun stellt sich natürlich die Frage, ob dieses Flimmern ein (gewollter) Hardware-Bug ist, oder ob man es durch ein Treiber-Update abstellen kann. Hierbei können wir, so wie es zur Zeit aussieht, Entwarnung geben. So hat der Forum-User Blaire vom 3DCenter einige interessante Versuche mit seiner GeForce 7800 GTX in Kombination älterer Treiber gestartet und ist zu einem erstaunlichen Ergebnis gekommen. Er hat den älteren ForceWare 70.41- sowie den 71.84-Treiber [10] mit einer aktuellen INF-Datei kombiniert, damit der ältere Treiber sich auch auf einer 7800 GTX installieren lässt. Die Software erkannte nach dem erfolgreichen Update die Karte als „Unknown Chip“, jedoch funktionierte diese einwandfrei. Und siehe da, der Texturfilter flimmerte plötzlich nicht mehr. Ob er nun genau die NV4x-Qualität erreicht, ist unbekannt – jedoch recht wahrscheinlich.

Weitere Versuche startete Blaire mit dem ForceWare 76.10 [9]. Dort hat er mit Hilfe von Ralf Kornmann herausgefunden, dass es nun eine pfeilartige Winkeloptimierung gibt. Diese muss man sich ungefähr in der Mitte des Bildes vorstellen, ab der es dann nach einer pfeilartig-aussehenden „Wand“ anfängt zu flimmern. Ab dem ersten offiziellen Treiber für GeForce 7800 GTX-Karten sind dann alle Optimierungen aktiv, sprich die pfeilartige Winkeloptimierung und noch ein zusätzliches „Grieseln“, welches das Gesamtbild stark flimmern lässt.

Far Cry mit ForceWare 70.41 - keine Optimierungen
Far Cry mit ForceWare 70.41 - keine Optimierungen
Far Cry, ForceWare 77.77 - mit neuen AF-Optimierungen
Far Cry, ForceWare 77.77 - mit neuen AF-Optimierungen
Battlefield 2, ForceWare 77.77 - mit neuen AF-Optimierungen
Battlefield 2, ForceWare 77.77 - mit neuen AF-Optimierungen

Weiterhin stellen wir drei Videos zur Verfügung [11], die die Filterproblematik in Bewegung zeigen sollen. Auch hier müssen wir anmerken, dass jene Videos mit der üblichen Problematik zu kämpfen haben und das Flimmern in Wirklichkeit nicht ganz so extrem auftritt, aber dennoch zu sehen ist. Zudem reagiert Half-Life 2, wenn auch nicht ganz so stark wie Unreal Tournament 2003 sowie 2004, recht aggressiv auf Filteroptimierungen, womit in anderen Spielen das Flimmern etwas weniger zu Tage kommt. Das erste Video zeigt eine GeForce 6600 GT im High-Quality-Modus, bei welcher so gut wie kein Flimmern auftritt [8]. Das zweite bietet eine GeForce 7800 GTX mit dem modifizierten 70.41-Treiber an. Hier ist wie bei der langsameren GeForce 6600 GT kaum ein Flimmern erkennbar.

Das letzte Video wurde ebenfalls mit einer GeForce 7800 GTX im High-Quality-Modus aufgenommen, jedoch ist in diesem Fall der letzte offizielle Referenztreiber, der ForceWare 77.77, im Einsatz. Hier ist das Flimmern deutlich zu erkennen, vor allem die Aufzug-Texturen scheinen sehr anfällig für die neuen Optimierungen zu sein, da sich dort gar ein regelrechter Moiré-Effekt zeigt. Die Holztexturen dagegen flimmern weniger, weisen jedoch ein gut sichtbares Grieseln auf. Wie bereits im oberen Teil des Textes erwähnt, ist das Flimmern in Wirklichkeit nicht ganz so stark ausgeprägt. Die Videos kann man sich von unserem Server herunterladen [10].

Schlusswort

Eine weitere positive Nachricht ereilte uns von einigen Tagen von Jens Neuschäfer, dem „Central European Product PR Manager“ von nVidia. Er berichtete, dass in einer zukünftigen Treiberversion der High-Quality-Modus in Bezug auf das Flimmern überarbeitet wird. Was für Auswirkungen das genau auf die Bildqualität hat, wird sich jedoch noch zeigen müssen. Zudem war von einer Änderung im Quality-Modus – welcher ja ebenfalls verschlechtert wurde – keine Rede. Aus diesem Grund sehen wir dieser Aussage zur Zeit noch etwas skeptisch entgegen. Schließlich hätte der Flimmer-Bug auch den nVidia-Ingenieuren während einiger Tests mit dem ForceWare 77.76 sowie 77.77 auffallen müssen, oder?

GeForce 7800-Logo
GeForce 7800-Logo

Wie auch immer nVidia sich entscheiden wird, ob der neue Treiber das Flimmern wirklich entfernt oder ob man es irgendwie, vielleicht in abgemilderter Form, erneut präsentiert: Es zeigt, dass die Chiphersteller um jeden Frame kämpfen, egal ob der Kunde darunter zu leiden hat oder nicht. So geht es unserer Meinung nach aber nicht, nVidia! Wir verlangen zwar nicht die Abschaffungen sämtlicher Optimierungen des anisotropen Filters, jedoch verlangen wir, dass dem Kunden eine Möglichkeit in den Treibern geboten wird, jene zu deaktivieren – und das gilt auch für die Winkelabhängigkeit. Zudem möchten wir alle Käufer und Redakteure bitten, in der Zukunft ein größeres Augenmerk auf die Bildqualität zu legen. Ansonsten wird es, den Entwicklungen nach zu folgen, in ein paar Jahren nur noch eine bilineare Filterung geben. Wir werden bezüglich der G70-Optimierungen natürlich am Ball bleiben.

Zum Schluss möchten wir erwähnen, dass die von uns präsentierten Benchmarks nicht der Realität entsprachen, weswegen wir sie wieder entfernt haben. Eine entsprechende Stellungnahme zu dem Thema ist hier zu finden [12].

URL-Liste:

  1. http://www.computerbase.de/artikel/hardware/grafikkarten/2005/test_nvidia_geforce_7800_gtx_sli/
  2. http://www.3dcenter.de/artikel/g70_flimmern/
  3. http://www.3dcenter.de
  4. http://www.computerbase.de/artikel/hardware/grafikkarten/2002/vorschau_vorstellung_geforce4/
  5. http://www.computerbase.de/artikel/hardware/grafikkarten/2001/test_powermagic_ati_radeon_8500/
  6. http://www.computerbase.de/artikel/hardware/grafikkarten/2003/vorschau_nvidia_geforce_fx5900_ultra/
  7. http://www.computerbase.de/artikel/hardware/grafikkarten/2005/bericht_forceware_vergleich/10/
  8. http://www.hardware.fr/
  9. http://www.computerbase.de/artikel/hardware/grafikkarten/2005/bericht_af-optimierungen_lupe/
  10. http://www.computerbase.de/artikel/hardware/grafikkarten/2005/bericht_forceware_vergleich/
  11. http://www.computerbase.de/downloads/software/systemprogramme/grafikkarten/af-videos/
  12. http://www.computerbase.de/news/hardware/grafikkarten/nvidia/2005/august/korrektur_g70/
Copyright © 1999–2012 ComputerBase GmbH