| (Rubrik Games) | |
| (Rubrik Aktuell) |
OpenGL
OpenGL dürfte jedem Ego-Shooter-Fan ein Begriff sein. Wir klären auf, was es mit diesem interessanten 3D-Standard auf sich hat - und wie man OpenGL-Spiele in der Praxis zum Laufen bekommt.
Wer sich die erste 3Dfx-Karte mit Voodoo-Chip gekauft hat und zugleich 3D-Shooter-Fan ist, der besitzt auch den GL-Patch des in Deutschland indizierten, weltberühmten 3D-Shooters. Danach staunt man nicht nur über die flüssige Animation, sondern auch über die Leucht-Effekte von Schüssen und Explosionen, die in der normalen DOS-Version des Spiels nicht auftauchten. Möglich wurde das durch eine Software namens »OpenGL«, die ähnlich wie »Direct3D« dreidimensionale Objekte und Räume darstellt. Da id Software den Grafik-Programmteil, die sogenannte »Engine«, lizenziert hat und dieser wiederum OpenGL benutzt, erschienen bereits einige weitere Spiele mit OpenGL-Unterstützung; unter anderem »Hexen 2«, »Half-Life«(deutsch), »Heretic 2«. Aber auch andere Spielehersteller unterstützen diesen Grafikstandard manchmal sogar lieber als Direct3D. Für Spieler wird OpenGL also immer interessanter.
Schon wieder etwas Neues?
Ursprünglich stammt OpenGL von Silicon Graphics. Sie wissen schon, das sind die Jungs, welche die superteuren, superschnellen Grafik-Computer produzieren, mit denen solche Filme wie »Abyss«, »Terminator 2« und »Jurassic Park« gemacht wurden. Ursprünglich lief das Ganze noch unter »GL«, was ausgeschrieben ganz unpompös und schlicht »Graphics Library« bedeutet. Mit dieser Software ließen sich so spannende Dinge wie Auto- und Häuser-Konstruktionen darstellen. Da aber auch Konstrukteure ihre virtuellen Spielzeuge gerne mit Texturen und beleuchtet sehen und in Echtzeit rotieren wollen, entwickelte sich GL zu einer leistungsfähigen Bibliothek, mit der man eben genau das machen konnte.
Im Jahr 1992 veröffentlichte Silicon Graphics dankenswerterweise die Source-Codes für GL, bildete mit anderen Firmen ein Konsortium, das über den weiteren Werdegang der Software mit Argusaugen wacht, und nannte es fortan »OpenGL«. OpenGL ist also keineswegs neu, sondern ganz im Gegenteil ein 3DStandard mit einer langen Tradition. Das hat zur Folge, daß OpenGL ausgezeichnet entwickelt und dokumentiert ist. Programmierer kommen damit besser klar als mit Microsofts recht neuem Direct3D.
Was für Ingenieure gut ist, kommt auch einem Spieler gerade recht. So dachte wohl John Carmack, der geniale Programmiergeist hinter den id-Software-Spielen, und befaßte sich genauer mit den OpenGL-Spezifikationen. Direct3D stand zwar auch zur Auswahl, fand aber nicht sein Gefallen. In einem offenen Brief an Microsoft beschwerte er sich sogar über die ungenauen und praxisfernen Definitionen von Direct3D - und zack, schon erhielten die id-Spiele neuerer Generation eine OpenGL-Schnittstelle verpaßt. Das alles gibt es übrigens nicht nur auf dem PC, sondern eigentlich auf jedem Betriebssystem mit Rang und Namen: Unix, OS/2, BeOS. Das hat zum Beispiel auch zur Folge, daß Linux - Anwender ebenfalls ids 3D-Shooter genießen können.
MiniGL oder Miniport OpenGL
Von OpenGL existieren zwei unterschiedlich »mächtige« Varianten: der »MCD« (Mini Client Driver) und der ICD« (Installable Client Driver). Während der MCD eine abgespeckte Variante für einfache Aufgaben ist, enthält der ICD die volle Dröhnung an OpenGL-Befehlen, mit allem, was 3D-Grafik schick und dick macht. Für Spieler hat sich nun eine dritte Variante eingeschlichen, die weniger umfangreich als der ICD ist, aber auch mehr als der MCD kann: das sogenannte »MiniGL« oder »Miniport OpenGL«. Und jetzt raten Sie mal, warum das MiniGL »zufällig« genau den Umfang hat, daß man dShooter spielen kann? Richtig: Hersteller von Spielekarten müssen dafür gerade soviel von OpenGL umsetzen, damit Spiele laufen.
Kleine Fußangel: Aufgrund der Namensähnlichkeit verwechselt man den MCD gern mit MiniGL. Spiele laufen mit einem MCD allerdings nicht. Mit dem dicken ICI) gibt's dagegen keine Probleme, und glücklicherweise bieten auch fast alle Hersteller von 3D-Spielekarten inzwischen einen ICD an. Also: Beim Kauf einer 3D-Karte auf diese Feinheit achten oder sich zumindest im Internet umtun, ob es von dem Kartenhersteller nicht einen entsprechenden Treiber zum Download gibt.
Treibereien
Für ein Spiel oder eine beliebige andere Software unter Windows 95/98 ist OpenGL zunächst mal nichts anderes als ein weiterer 3D-Treiber. Microsoft hat sich dieser Thematik recht früh angenommen und ein entsprechendes Treiber-System ersonnen. Grundsätzlich ist die Datei OPENGL32.DLL im System-Verzeichnis von Windows für alle OpenGL-Angelegenheiten zuständig. Allerdings ist diese erst ab der B-Version von Windows-95 standardmäßig mit dabei (Windows 95 OSR-2). Wer noch mit dem Uralt-Windows-95 arbeitet, aber keine Lust hat, wegen eines Spiels ein ganzes Windows neu zu installieren, kann sich die Datei auch von Microsoft über das Internet besorgen. Die entsprechende URL finden Sie im Kasten »Nützliche Internet-Adressen«.
Auch ohne entsprechende 3D-Karten beherrscht Ihr Computer damit OpenGL. Selbst wer noch keine Spiele unter OpenGL hat laufen lassen, wurde wahrscheinlich trotzdem schon unwissentlich damit konfrontiert. Die Bildschirmschoner »3D-Rohre«, »3D-Text« und »3D-Bucket« nutzen nämlich OpenGL, um die dreidimensionalen Objekte darzustellen. Ein Spiel benutzt jetzt einfach diese DLL und stellt damit seine Grafiken dar. Ein Grafikkartenhersteller bindet weitere Treiber bei der Installation der Kartentreiber ein, auf die wiederum OPENGL32.DLL zugreift. Beim Spiel stellt man nun einfach »OPENGL« ein (zum Beispiel »Heretic 2«), schon kommt man in den Genuß der 3D-Beschleunigung.
Bei vielen Spielen gibt es auch spezielle Treiber für verschiedene Grafikkarten, zum Beispiel »RenditionGL« oder »PowerVR-GL«. Wenn Sie sich sicher sind, daß ein OpenGLTreiber sowieso schon mit den Kartentreibern des Herstellers installiert wurde, lassen Sie diese Optionen dann einfach außen vor.
Spielereien
Was aber tun, wenn das Spiel zwar OpenGL nutzt, aber speziell zum Beispiel auf 3Dfx gemünzt ist (wie etwa »Hexen 2«)? In diesem Fall ist bereits beim Spiel ein Treiber für die Grafikkarte installiert. Wenn Sie im Installationsverzeichnis des Spiels nachschauen, finden Sie dort ebenfalls eine OPENGL32.DLL. Benennen Sie diese nun einfach um, zum Beispiel in »OPENGL32X.DLL«. Das Spiel sucht weiterhin seine gewohnte DLL, findet diese dank der Namensänderung nicht mehr im Spieleverzeichnis, sondern im System-Verzeichnis von Windows. Da diese wie gesagt auf den Treiber Ihres Kartenherstellers zugreift, läuft das Spiel mit dieser Maßnahme nun auch auf einer anderen Grafikkarte.
Spezialfall
Leider liefern noch nicht alle Hersteller Standard-OpenGLTreiber mit. Bei ATI muß man zum Beispiel die Treiber in das Installationsverzeichnis des Spiels kopieren. Dabei passiert eigentlich auch nichts anderes, als daß eine auf die Karte des Herstellers angepaßte »OPENGL32.DLL« im Spiele-Verzeichnis landet. Windows-Programme suchen DLLs nun als erstes in dem Verzeichnis, auf dem zuletzt der Pfad stand. Das ist üblicherweise das Verzeichnis, in dem das Programm installiert wurde. Wenn es dort die OpenGL-Komponente entdeckt, sucht das Programm nicht weiter, selbst wenn im System-Verzeichnis eine weitere DLL vorhanden ist. Es benutzt einfach die zuerst gefundene DLL. Das heißt für unseren Fall: Auch wenn ATI zum Beispiel angibt, daß der Spiele-Patch für die id Shooter gedacht ist, kann man damit auch andere OpenGL-Spiele zum Laufen bekommen. Einfach das Ganze in das Installationsverzeichnis kopieren, im Spiel »OpenGL« einstellen oder die spezielle »OpenGL«-Variante des Spiels starten und fertig.
Wenn trotzdem nichts passiert, gibt es noch eine Möglichkeit: Überprüfen Sie in der Verknüpfung zu dem Spiel unter dem Reiter »Programm« das »Arbeitsverzeichnis:«. Dieses muß denselben Pfad enthalten wie die »Befehlszeile«. Sonst sucht das Programm eventuell an einem falschen Ort nach der OPENGL32.DLL, findet diese nicht und benutzt die im SystemVerzeichnis.
OpenGL ist nicht GLide
Ursprünglich wurde der Standard unter Spielern eigentlich in Zusammenhang mit 3Dfx-Grafikkarten bekannt. Nun hat 3Dfx für diese eine eigene Grafiksoftware n-üt dem Namen »GLide« entwickelt. OpenGL-Treiber für 3Dfx-Kartenbauen außerdem auf GLide auf, setzen also die Befehle von OpenGL in GLide-Sequenzen um. Sollte da mal etwas verinstalliert sein, meldet sich der OpenGL-Treiber mit einem »GLide-Library not found« oder einer vergleichbaren Meldung. Da OpenGL und GLide auch noch ähnlich heißen, kursierte recht schnell das Gerücht daß OpenGL das gleiche wie GLide sei. Dem ist allerdings keineswegs so. Sollte Ihnen so etwas passieren, hilft eine Neuinstallation der GLideTreiber. Haben Sie dagegen gar keine 3Dfx-Karte in Ihrem PC, wird die falsche DLL benutzt.
Links:
OpenGL Treiber: www.frag.com/gl
| (Rubrik Games) | |
| (Rubrik Aktuell) |