Die 1991 gegründete Spiele-Schmiede id Software ist einer der festen Größen in der Branche und feiert am 1. Februar 2010 ihr 19jähriges Bestehen. Unter anderem verdanken wir dieser Firma das Genre der Ego-Shooter. Aber auch die Grafik-Engines zur Visualisierung der Spiele haben traditionell immer wieder Maßstäbe gesetzt.

Hauptsächlich sind die grafischen Innovationen dem technischem Direktor von id Software, Programmierer-Legende John Carmack, zu verdanken. Anlässlich des Geburtstages der Firma wollen wir die wichtigsten technischen Fortschritte der bisher erschienenen Engines zusammenfassen. Das kommende Grafik-Gerüst id Tech 5 des bald erscheinenden Titels Rage und deren Nachfolger id Tech 6 haben wir in separaten Artikeln bereits näher beleuchtet.

Wolfenstein 3D

Häufig und fälschlich wird es als erster Ego-Shooter der Welt bezeichnet. Als solcher gilt jedoch das im April 1991 bei id Softwares erschienene Hovertank 3D, in dem der Protagonist einen Luftkissenpanzer aus der Ego-Perspektive durch verschiedene Levels manövriert. Wolfenstein 3D ist erst im Mai 1992 erschienen. Frühester Vertreter dieses Genres ist nach unseren Recherchen jedoch das 1974 von Steve Colley veröffentlichte Maze Wars.

id Software: Technologie-Chronik : id-Software-Logo id-Software-Logo id Software: Technologie-Chronik : Leveleditor der Wolfenstein-3D-Engine Leveleditor der Wolfenstein-3D-Engine 1992 konnten auch noch die 256 Farben bei einer Auflösung von gerade mal 320 mal 200 Pixeln die Massen begeistern. Im Vergleich zu Hovertank 3D, das den EGA-Standard mit 16 Farben verwendet, brachte der Umstieg auf VGA-Grafik eine deutliche Verbesserung der Grafik.

Die Gegner und die wenigen in den Levels verteilten Gegenstände sind über sogenannte »Sprites« realisiert. Dabei handelt es sich im Grunde nur um verschiedene Bilder. Abhängig vom Betrachtungswinkel oder der jeweiligen Bewegung des Gegners, werden diese gewechselt. Da es für die meisten Gegenstände und Gegner nur vier solcher Sprites und damit Ansichten gab, waren die Wechsel zwischen den einzelnen Ansichten sehr holperig. Wenn Sie zum Beispiel um einen Gegner herumlaufen, »springt« er plötzlich von der Front in die Seitenansicht.

Die spezifische Größe eines jeden Objektes richtet sich nach dem Abstand zum Spieler. Das wird zusammen mit der Abfrage, welche Abschnitte sichtbar sind, durch ein Raycasting-Verfahren ermittelt. Raycasting ist die einfachste Form von Raytracing, bei dem vom Punkt des Betrachters Strahlen ausgesandt und diese verfolgt werden. Beim Raycasting wird nur der Weg und die Eigenschaften eines Strahls bis zum ersten Treffen auf ein Hindernis verfolgt. Wenn einer der nur in der Horizontalen ausgesandten Strahlen auf ein Hindernis trifft, ist die ganze vertikale Zeile sichtbar und der Teil des Levels muss berechnet werden. Um entfernte Wände und Gegner perspektivisch kleiner wirken zu lassen, wird noch die Länge des Strahls im Verhältnis zum Betrachter untersucht. Da die Levels nur eine Ebene von gleicher Höhe umfassen können, reicht dieser Ansatz zum Erfassen einer Szene vollkommen aus - der Blick nach oben oder unten war ohnehin nicht möglich. Die auf rechte Winkel beschränkten Abzweigungen haben durch dieses Pseudo-3D-Verfahren aus einigen Ansichten perspektivische Fehler, die einigen Spielern damals Kopfweh beschert haben.