Voodoo5 WickedGL Report
3. Dezember 2000 / von Leonidas / Seite 1 von 7
Einleitung
Zu guten alten Voodoo2- und Voodoo3-Zeiten genoß der Metabyte WickedGL einen hervorragenden Ruf innerhalb der FPS-Gamer-Szene. Denn die meisten Spiele mit OpenGL-Schnittstelle (und dies sind nun mal auch die meisten FirstPersonShooter) konnten mit dem WickedGL-Treiber in Verbindung mit einer Voodoo-Grafikkarte gehörige Leistungssteigerungen erfahren. Von der damals wirklich guten Performance dieser Treiber zeugen auch die Metabyte-eigenen Uralt-Benchmarks, welche immer noch auf deren Website schlummern. |
Letztgenannter Link mit seinen Q3A-Benchmarks auf Basis einer Voodoo2-SLi-Kombination und einem Pentium III mit 500 MHz vom Ende letzten Jahres läßt aber heutzutage die Frage offen, wie die Lage mit aktuellen 3dfx-Produkten - und wichtiger - aktuellen 3dfx-Treibern aussieht. Denn 3dfx ist bei der Treiber-Entwicklung nicht stehengeblieben und hat mit jeder neuen Treiberversion einen Teil des Vorsprungs der WickedGL-Treiber einzuholen vermocht. Was liegt also näher, als sich einmal die genauen Performance-Vorteile des aktuellen WickedGL gegenüber dem aktuellen 3dfx-Treiber anzuschauen - und dies alles auf der Voodoo5. Nachfolgender Bericht bezieht sich also nicht auf die Voodoo3 (oder gar die Voodoo2). Die Resultate können dort ganz anders ausfallen, so daß wir zumindestens die Voodoo3 bei Gelegenheit gesondert betrachten werden.
Wer nicht weiss, was der WickedGL darstellt: Dieser ist ein auf Spiele zugeschnittener OpenGL-Treiber für Voodoo-Grafikkarten. Ein Ersatz für den normalen 3dfx-OpenGL-Treiber also, welcher in den 3dfx-Treibern enthalten ist. Der originale 3dfx-Treiber muß natürlich trotzdem installiert werden, um die Karte korrekt ins System einzubinden. Der WickedGL basiert dann auf der Tatsache, daß OpenGL-Games zwar im Normalfall auf den 3dfx-OpenGL-Treiber im "Windows/System"-Verzeichnis zugreifen, meistens jedoch auch einen im eigenen Game-Verzeichnis liegenden OpenGL-Treiber vorziehen. Der WickedGL läßt sich also spiel-genau einsetzen - dort, wo er etwas bringt, nutzt man ihn, ansonsten läßt man es.
Das WickedGL Switching Utility hilft bei der Installation des WickedGL für alle supporteten Spiele, indem es das exakte Zielverzeichnis und den vom Spiel erwartenden Datei-Namen weiss. Natürlich kann man dies auch manuell lösen, im WickedGL-Verzeichnis (üblicherweise "C:\Programme\Metabyte\WickedGL\") liegen die beiden Dateien opengl32.dll und ogl_hres.dll, wobei erstere für niedrige Auflösungen und letzte für höhere Auflösungen empfohlen wird. Metabyte gibt leider keine exakte Hilfe, wo die Auflösungs-Trennlinie zwischen der normalen und der HiRes-Version liegt. Ein kleiner Test ergab jedoch, daß ab 1024*768 die HiRes-Version immer vorzuziehen ist.
Wenn man den WickedGL wie gesagt manuell installieren will, greift man sich die passende Version und benennt sie in opengl32.dll um, falls sie sich noch nicht so nennt. Die meisten Spiele erwarten eine Datei diesen Namens, es gibt allerdings Ausnahmen - die Datei "Wglgames.cfg" im WickedGL-Verzeichnis gibt darüber Auskunft. Danach muß die Datei nur noch ins Game-Verzeichnis geschoben werden, bei Quake & Clones ist das meistens das Haupt-Verzeichnis des Spiels und bei Unreal & Clones immer das "System"-Verzeichnis des Spiels. Den Erfolg der Aktion sieht man eigentlich sofort nach dem Starten des Spiels durch das etwa 20-sekündige Einblenden des WickedGL-Logos in der rechten oberen Ecke. Egal, ob nun manuell oder über das "WickedGL Switching Utility" installiert - in letzterem findet sich mittels der Option WickedGL control panel ein kleines Options-Menü, mit welchem sich der WickedGL tweaken läßt. Hier kann sehr viel an der herauskommenden Performance getan werden - deswegen werden wir dieses Control Panel dann auch gleich wieder benötigen.
Testsystem & -Settings
Zum Einsatz kommt der WickedGL 2.31, wobei wir prinzipiell den HiRes-Renderer benutzt haben, da wir 1024*768 und 1280*1024 getestet haben. Den Widerpart übernimmt der brandneue Voodoo5-Treiber 1.04.01 Beta. Der Treiber steht auf absoluten Standard-Einstellungen (da keine Option eines Tweakings bedurfte), nur der Vsync wurde für die Benchmarks deaktiviert. Testobjekt ist eine Voodoo5-5500 AGP auf Standard-Takten (166 / 166 MHz), welche auf einem Asus P2B-B mit 256 MB PC-100 RAM und einem Celeron II 566 @ 850 MHz ihr Werk verrichtet. Das Betriebsystem ist ein absolut frisches Windows 98 SE mit DirectX 8.0 deutsch.
Alle Tests laufen ausschließlich nach den Regeln unseren Benchmark-Anleitungen. Dies bedeutet bei allen Spielen die jeweils maximale über Menüs einstellbare Grafikqualität (bei Unreal und UT über die entsprechenden ini-Dateien) und Messungen mit aktiviertem 22kHz-HQ-Sound. Die einzigen getätigen Ausnahmen (Tests mit Texturenkomprimierung) werden jeweils bei den Testgames entsprechend beschrieben.
Zum WickedGL selber: Hier verwenden wir die beiden möglichen Einstellungen zur Texturenkomprimierung (TC). Zum einen eine mit und zum anderen eine ohne Treiber-seitige Texturenkomprimierung. Zuerst die Einstellungen des WickedGL control panel für die Tests ohne Treiber-seitige Texturenkomprimierung - welche nur dann TC einsetzt, wenn es ein Spiel anfordert:
Was haben wir zu den "defaults" verändert? Das "Mipmap dithering" haben wir ausgeschaltet. Diese Option soll im übrigen das Fehlen von echtem trilinearem Filtering unter OpenGL ausgleichen - leider funktioniert das nur mit Quake III Arena sauber, die Ergebnisse bei den anderen Spielen sind eher mager bis schlecht. Ein Frameratenfresser ist diese Lösung aber nicht, ob mit oder ohne spielt kaum eine Rolle. Es ist vor allem ausgeschaltet, um eine Gleichheit mit dem 3dfx-Treiber zu erreichen, dort ist es standardmäßig disabled.
Aus dem selben Grunde schalteten wir das "Tripple buffering" ebenfalls aus. Für die nächsten Optionen behielten wir die default-Werte, die Änderung an der letzten Option "Compressed texture cache" betrifft nur den Speicher auf der Festplatte, den der WickedGL-Treiber mit komprimierten Texturen pro Spiel als Texturen-Cache belegen darf. Wir wählten die maximale Einstellung "32 MB", da es im Endeffekt nur mehr Festplatten-Platz kostet.
In dieser Konfiguration komprimiert der WickedGL-Treiber wie gesagt nur dann, wenn das Spiel es anweisst - deshalb steht der Punkt "Texture compression" auch auf "... on application request only". Dies ist im Prinzip die selbe Weg, denn der 3dfx-eigene Treiber geht. Der WickedGL-Treiber bietet aber in der selben Einstellungsmöglichkeit noch eine andere Option an:
Mit dieser Option werden alle Texturen komprimiert, welche komprimierbar sind. D.h. alle Spiele, welche von Haus aus keine Texturenkomprimierung unterstützen, können hier profitieren. Erstaunlicherweise gewinnen aber auch diese Spiele, welche eigentlich eine eingebaute Texturenkomprimierung besitzen: Q3A & Co. komprimieren offensichtlich nicht jede Textur, welche sie benutzen. Beachten sollte man im übrigen, daß in den Spielen, welche dies unterstützen, die Texturenkomprimierung für die Tests mit TC immer eingeschaltet werden soll - selbst wenn der WickedGL-Treiber behauptet, alle Texturen sowieso zu komprimieren, bringt dies noch einige fps. Eine Option, ganz ohne Texturenkomprimierung zu arbeiten, bietet der WickedGL nicht - dies muß man dann in den betreffenden Spielen abstellen, falls man es so wünscht.
Wir haben also im besten Falle sechs verschiedene Benchmark-Werte: Ein dunkelgrün für den 3dfx-Treiber ohne TC gegen ein dunkelblau für den WickedGL ohne TC. Dazu ein grün für den 3dfx-Treiber mit TC, dort wo es die Spiele unterstützen gegen ein blau für den WickedGL mit TC, dort wo es die Spiele unterstützen. Letztendlich noch ein hellblau für den WickedGL mit TC für alle Texturen und Spiele (über den WickedGL erzwungen) und - als alternative Lösung und außerdem etwas außer Konkurrenz - ein rot für die Direct3D-Lösung, welche logischerweise auf den WickedGL und Texturenkomprimierung verzichten muß und nur in den Multi-API-Spielen Unreal und Unreal Tournament zur Anwendung kommt.
Weil Tests allein unter Quake III Arena reichlich öde sind und auch nicht alle Leute Quaker sind, habe ich alles gebencht, was ich besitze und was mit dem WickedGL zusammenpasst. Als da wären: Quake III Arena, Heavy Metal FAKK2, Star Trek Voyager: Elite Force, Unreal, Unreal Tournament, Quake 2 und Soldier of Fortune. Deus Ex habe ich nicht gebencht, da OpenGL - egal ob mit WickedGL oder/und TC - immer langsamer war als Direct3D und außerdem die üblichen kleinen Grafikfehler (falsche Farben beim Inventar, Status der gewählten Waffe, Fadenkreuz und Mauszeiger) mitbrachte. Diese liegen nicht am WickedGL, sondern an Deus Ex, welche momentan unter OpenGL einfach nicht fehlerfrei zum laufen zu bekommen ist - auch nicht mit GeForce-Karten.
Ok, lange genug Vortext, lasset uns zum einzigen spannenden Teil kommen, den Benchmarks ...