Ego-Shooter-Engine - First-person shooter engine

Eine Ego-Shooter-Engine ist eine Videospiel-Engine, die auf die Simulation von 3D- Umgebungen zur Verwendung in einem Ego-Shooter- Videospiel spezialisiert ist . First-Person bezieht sich auf die Ansicht, in der die Spieler die Welt aus den Augen ihrer Charaktere sehen. Shooter bezieht sich auf Spiele, bei denen es hauptsächlich darum geht, Schusswaffen zu führen und andere Wesen in der Spielwelt zu töten, entweder Nicht-Spieler-Charaktere oder andere Spieler.

Die Entwicklung der FPS-Grafik-Engines ist durch eine stetige Zunahme der Technologien mit einigen Durchbrüchen gekennzeichnet. Versuche, unterschiedliche Generationen zu definieren, führen zu willkürlichen Entscheidungen darüber, was eine stark modifizierte Version eines "alten Motors" und was ein neuer Motor ist.

Die Klassifizierung ist kompliziert, da Game-Engines alte und neue Technologien miteinander verbinden. Funktionen, die in einem neuen Spiel in einem Jahr als fortgeschritten gelten, werden im nächsten Jahr zum erwarteten Standard. Spiele mit einer Kombination aus älteren und neueren Funktionen sind die Norm. Zum Beispiel führte Jurassic Park: Trespasser (1998) die Physik in das FPS-Genre ein, das erst um 2002 üblich wurde. Red Faction (2001) zeigte eine zerstörbare Umgebung , die Jahre später bei Motoren immer noch nicht üblich war.

Zeitleiste

Ein Diagramm, das die Geschichte der FPS-Motoren zeigt

1970er und 1980er Jahre: Frühe FPS-Grafik-Engines

Das Rendern von Spielen für diese frühe Generation von FPS erfolgte bereits aus der Perspektive der ersten Person und mit der Notwendigkeit, Dinge zu fotografieren. Sie wurden jedoch hauptsächlich mit Vektorgrafiken erstellt .

Es gibt zwei mögliche Antragsteller für die erste FPS, Maze War und Spasim . Maze War wurde 1973 entwickelt und beinhaltete einen einzelnen Spieler, der sich durch ein Labyrinth von Korridoren bewegte, die mit einer festen Perspektive gerendert wurden. Multiplayer- Funktionen, bei denen Spieler versuchten, sich gegenseitig zu erschießen, wurden später hinzugefügt und 1974 vernetzt. Spasim wurde ursprünglich 1974 entwickelt und umfasste Spieler, die sich durch ein 3D-Universum mit Drahtgitter bewegten. Spasim kann von bis zu 32 Spielern im PLATO- Netzwerk gespielt werden.

Die von Incentive Software selbst entwickelte Freescape- Engine gilt als eine der ersten proprietären 3D-Engines, die für Computerspiele verwendet werden, obwohl die Engine außerhalb der eigenen Titel von Incentive nicht kommerziell verwendet wurde. Das erste Spiel, das diese Engine verwendete, war 1987 das Puzzlespiel Driller .

Anfang der 90er Jahre: Wireframes zu 2.5D-Welten und Texturen

Spiele dieser Generation werden oft als Doom-Klone angesehen . Sie waren nicht in der Lage, 3D vollständig zu rendern, verwendeten jedoch 2.5D- Raycasting- Techniken, um die Umgebung zu zeichnen, und Sprites, um Feinde anstelle von 3D-Modellen zu zeichnen . Diese Spiele verwendeten jedoch Texturen , um die Umgebung zu rendern, anstatt einfache Drahtmodellmodelle oder Volltonfarben.

Hovertank 3D von id Software war der erste, der diese Technik 1990 verwendete, verwendete jedoch immer noch keine Texturen , eine Funktion, die kurz darauf bei Catacomb 3D (1991) hinzugefügt wurde , dann mit der Wolfenstein 3D-Engine, die später für mehrere verwendet wurde andere Spiele. Catacomb 3D war auch das erste Spiel, bei dem die Hand des Spielers auf dem Bildschirm angezeigt wurde, wodurch die Einbeziehung des Spielers in die Rolle des Charakters gefördert wurde.

Die Wolfenstein 3D- Engine war immer noch sehr primitiv. Es wurden keine Texturen auf den Boden und die Decke aufgebracht, und das Strahlenwerfen beschränkte die Wände auf eine feste Höhe, und die Ebenen befanden sich alle auf derselben Ebene.

Obwohl immer noch kein echtes 3D verwendet wurde , beseitigte id Tech 1 , das zuerst in Doom (1993) und erneut in id Software verwendet wurde , diese Einschränkungen. Zunächst wurde auch das Konzept der binären Raumpartitionierung (BSP) eingeführt. Ein weiterer Durchbruch war die Einführung von Multiplayer-Fähigkeiten in der Engine. Da jedoch immer noch 2.5D verwendet wurde, war es in Doom unmöglich, richtig auf und ab zu schauen, und alle Doom-Ebenen waren tatsächlich zweidimensional. Aufgrund des Fehlens einer Z-Achse ermöglichte der Motor keine Raum-über-Raum- Unterstützung.

Der Erfolg von Doom brachte mehrere Spiele hervor, die dieselbe Engine oder ähnliche Techniken verwendeten, und gab ihnen den Namen Doom-Klone . Die Build-Engine , die in Duke Nukem 3D (1996) verwendet wurde, beseitigte später einige der Einschränkungen von id Tech 1, z. B. die Build-Engine, die Raum über Raum unterstützen kann, indem Sektoren über Sektoren gestapelt werden Die verwendeten Techniken blieben gleich.

Mitte der 1990er Jahre: 3D-Modelle, Anfänge der Hardwarebeschleunigung

Mitte der neunziger Jahre erstellten Game Engines echte 3D- Welten mit beliebiger Geometrie. Anstelle von Sprites verwendeten die Engines einfach strukturierte (Single-Pass-Texturierung, keine Beleuchtungsdetails) polygonale Objekte.

Fromsoftware freigegeben Königsfeld , ein vollständige Polygon First-Person - Echtzeit - Action - Titel für die kostenlosen Roaming Sony PlayStation im Dezember 1994 Sega ‚s 32X Release Metallkopf war ein First-Person - Shooter - Mecha - Simulationsspiel , das vollständig verwendet Textur-abgebildet , 3D polygonale Grafiken . Ein Jahr zuvor veröffentlichte Exact das Sharp X68000- Computerspiel Geograph Seal , einen vollständig polygonalen 3D-Ego-Shooter, der Plattformspielmechaniken einsetzte und den größten Teil der Action in frei lebenden Außenumgebungen statt in den Korridorlabyrinthen von Wolfenstein 3D abspielte . Im folgenden Jahr veröffentlichte Exact seinen Nachfolger für die PlayStation-Konsole Jumping Flash! , die dieselbe Spiel-Engine verwendeten, diese jedoch anpasste, um mehr Wert auf die Plattform als auf das Schießen zu legen. Der springende Blitz! Serie weiterhin den gleichen Motor verwenden.

Dark Forces , 1995 von LucasArts veröffentlicht , gilt als eines der ersten "echten 3-D" Ego-Shooter-Spiele. Sein Motor, der Jedi-Motor , war einer der ersten Motoren, der eine Umgebung in drei Dimensionen unterstützte: Bereiche können in allen drei Ebenen nebeneinander existieren, auch übereinander (z. B. Stockwerke in einem Gebäude). Obwohl die meisten Objekte in Dark Forces Sprites sind, unterstützt das Spiel strukturierte 3D-gerenderte Objekte. Ein weiteres Spiel, das als eines der ersten echten 3D-Ego-Shooter gilt, ist Parallax Software 's 1994er Shooter Descent .

Die Quake-Engine ( Quake , 1996) verwendete weniger animierte Sprites und echte 3D-Geometrie und -Beleuchtung. Dabei wurden ausgefeilte Techniken wie Z-Pufferung verwendet , um das Rendern zu beschleunigen. Quake war auch das erste echte 3D-Spiel, das ein spezielles Karten-Design-System zur Vorverarbeitung und Vorrenderung der 3D-Umgebung verwendete: Die 3D-Umgebung, in der das Spiel stattfand (erstmals als Karte bezeichnet ), wurde während der Erstellung vereinfacht der Karte, um die beim Spielen erforderliche Verarbeitung zu reduzieren.

In den BSP- Dateien, in denen die Ebenen gespeichert sind, wurden auch statische Lichtkarten und 3D-Lichtquellen hinzugefügt , um eine realistischere Beleuchtung zu ermöglichen.

Die ersten Grafikprozessoren erschienen Ende der neunziger Jahre, aber viele Spiele unterstützten zu dieser Zeit noch das Rendern von Software. id Tech 2 ( Quake II , 1997) war eines der ersten Spiele, das hardwarebeschleunigte Grafiken nutzte ( id Software überarbeitete Quake später , um dem Spiel OpenGL- Unterstützung hinzuzufügen ).

GoldSrc , die Engine, die von der Quake-Engine von Valve for Half-Life (1998) abgeleitet wurde, fügte Direct3D- Unterstützung und ein Skelett- Framework hinzu, um die NPCs besser zu rendern , und verbesserte auch die künstliche Intelligenz (KI) der NPCs im Vergleich zur Quake-Engine erheblich .

Ende der 90er Jahre: Volle 32-Bit-Farbe und GPUs werden zum Standard

In dieser Zeit wurden die ersten Grafikkarten mit Transform, Clipping und Beleuchtung (T & L) eingeführt . Die erste Karte mit dieser innovativen Technologie war die GeForce 256 . Diese Karte war besser als das, was 3dfx zu dieser Zeit zu bieten hatte, nämlich Voodoo3 , das nur wegen des Mangels an T & L zu kurz kam. Unternehmen wie Matrox mit ihrem G400 und S3 mit ihrem Savage4 mussten sich in diesem Zeitraum vom 3D-Gaming-Markt zurückziehen. Ein Jahr später veröffentlichte ATI seine Radeon 7200 , eine echte konkurrierende Grafikkartenlinie.

Während alle Spiele dieser Zeit 16-Bit-Farben unterstützten , verwendeten viele auch 32-Bit-Farben (wirklich 24-Bit-Farben mit einem 8-Bit-Alphakanal). Bald begannen viele Benchmark-Sites, 32-Bit als Standard zu bewerben. Die Unreal Engine , die seit ihrer Veröffentlichung in einer Vielzahl von FPS-Spielen verwendet wurde, war zu dieser Zeit ein wichtiger Meilenstein. Anstelle von OpenGL wurde die speziell für 3dfx- GPUs entwickelte Glide-API verwendet . Wahrscheinlich war der wichtigste Grund für seine Popularität , dass die Engine - Architektur und die Aufnahme einer Skriptsprache machte es leicht mod es. Eine weitere Verbesserung von Unreal im Vergleich zur vorherigen Generation von Engines war die Netzwerktechnologie , die die Skalierbarkeit der Engine im Mehrspielermodus erheblich verbesserte .

id Tech 3 , das erstmals für die Quake III Arena verwendet wurde , wurde gegenüber dem Vorgänger verbessert, indem wesentlich komplexere und flüssigere Animationen gespeichert werden konnten. Es hatte auch Licht und Schatten verbessert und führte Shader und gekrümmte Oberflächen ein.

Anfang der 2000er Jahre: Zunehmende Details, Außenumgebungen und Stoffpuppenphysik

Neue Grafikhardware bot neue Funktionen, mit denen neue Engines verschiedene neue Effekte wie Partikeleffekte oder Nebel hinzufügen sowie Textur- und Polygondetails verbessern konnten. Viele Spiele zeigten große Außenumgebungen, Fahrzeuge und Stoffpuppenphysik .

Durchschnittliche Anforderungen an die Videohardware: In der Regel war eine GPU mit Hardware- AGB wie DirectX 7.0 GeForce 2 oder Radeon 7200 erforderlich. Die GeForce 3 oder Radeon 8500 der nächsten Generation wurden aufgrund ihrer effizienteren Architektur empfohlen, obwohl ihre DirectX 8.0-Vertex- und Pixel-Shader wenig nützlich waren. Eine Handvoll Spiele unterstützten weiterhin DirectX 6.0-Chipsätze wie RIVA TNT2 und Rage 128 sowie Software-Rendering (mit integriertem Intel GMA ), obwohl dies offensichtlich war, dass selbst eine leistungsstarke CPU den Mangel an Hardware-T & L nicht kompensieren konnte.

Ursprünglich für die PC- Plattform entwickelte Spiele-Engines wie die Unreal Engine 2.0 wurden für Konsolen der sechsten Generation wie PlayStation 2 oder GameCube angepasst , die nun über die Computerleistung verfügen, um grafikintensive Videospiele zu verarbeiten.

Mitte der 2000er Jahre: Beleuchtung und Pixel-Shader, Physik

Die neue Generation von Grafikchips ermöglichte die Verbreitung von Pixel-Shader- basierten Texturen, Bump-Mapping sowie Beleuchtungs- und Schattentechnologien . Zu den Shader-Technologien gehörten HLSL (für DirectX ), GLSL (für OpenGL ) oder Cg .

Dies führte zur Veralterung von DirectX 7.0 Grafikchips wie das weit verbreitete GeForce 2 und Radeon 7200 sowie DirectX 6.0 - Chipsatz wie RIVA TNT2 und Rage 128 und integrierte On-Board - Grafikbeschleuniger . Bis zu dieser Generation von Spielen konnte eine leistungsstarke CPU eine ältere Grafikkarte etwas ausgleichen. Durchschnittliche Anforderungen an die Videohardware: Mindestens eine GeForce 3 oder Radeon 8500 , dringend empfohlen wurde die GeForce FX, Radeon 9700 (oder andere Karten mit Pixel Shader 2.x- Unterstützung). Die Radeon 9700 demonstrierte, dass Anti-Aliasing (AA) und / oder anisotrope Filterung (AF) selbst in den neuesten und anspruchsvollsten Titeln zu dieser Zeit voll verwendbare Optionen sein können, und führte zu einer weit verbreiteten Akzeptanz von AA und AF als Standardfunktionen . AA und AF wurden zuvor von vielen früheren Grafikchips unterstützt, hatten jedoch einen starken Leistungseinbruch. Daher entschieden sich die meisten Spieler, diese Funktionen nicht zu aktivieren.

Mit diesen neuen Technologien bieten Game Engines nahtlos integrierte Innen- / Außenumgebungen, verwendete Shader für realistischere Animationen (Charaktere, Wasser, Wettereffekte usw.) und generell mehr Realismus. Die Tatsache, dass die GPU einige der Aufgaben erledigte, die bereits von der CPU ausgeführt wurden , und allgemein die zunehmende verfügbare Verarbeitungsleistung ermöglichten es, den Spielen realistische physikalische Effekte hinzuzufügen, beispielsweise durch die Einbeziehung der Havok- Physik-Engine in die meisten Videos Spiele. Physik wurde bereits 1998 in einem Videospiel mit Jurassic Park: Trespasser hinzugefügt , aber zu dieser Zeit waren die Hardware-Fähigkeiten begrenzt, und das Fehlen einer Middleware wie Havok für die Physik hatte es zu einem technischen und kommerziellen Fehler gemacht.

id Tech 4 , das erstmals für Doom 3 (2004) verwendet wurde, verwendete eine vollständig dynamische Beleuchtung pro Pixel , während sich 3D-Engines zuvor hauptsächlich auf vorberechnete Beleuchtung pro Scheitelpunkt oder Lichtkarten und Gouraud-Schattierung stützten . Der in Doom 3 verwendete Shadow-Volume- Ansatz ermöglichte eine realistischere Beleuchtung und Schatten, dies hatte jedoch seinen Preis, da keine weichen Schatten gerendert werden konnten und der Motor hauptsächlich in Innenräumen gut war. Später wurde dies korrigiert, um mit der Einführung der MegaTexture- Technologie in der id Tech 4- Engine für große Außenbereiche zu arbeiten .

Im selben Jahr Ventil freigegeben Half-Life 2 , angetrieben durch ihre neue Quelle - Engine. Diese neue Engine zeichnete sich unter anderem dadurch aus, dass sie sehr realistische Gesichtsanimationen für NPCs enthielt , einschließlich einer beeindruckenden Lippensynchronisationstechnologie .

Ende der 2000er Jahre: Die Herangehensweise an den Fotorealismus

Weitere Verbesserungen bei GPUs wie Shader Model 3 und Shader Model 4 , die durch neue Grafikchipsätze wie GeForce 7 oder Radeon X1xxx ermöglicht wurden, ermöglichten Verbesserungen bei Grafikeffekten.

Entwickler dieser Ära der 3D-Engines preisen häufig ihre zunehmend fotorealistische Qualität an. Etwa zur gleichen Zeit, beim Sport , gewinnen wir allmählich an Aufmerksamkeit. Diese Engines umfassen realistische Shader- basierte Materialien mit vordefinierter Physik, Umgebungen mit prozeduralen und Vertex-Shader- basierten Objekten ( Vegetation , Trümmer, von Menschen hergestellte Objekte wie Bücher oder Werkzeuge), prozedurale Animationen , kinematografische Effekte ( Schärfentiefe , Bewegungsunschärfe , usw.), Rendering mit hohem Dynamikbereich und einheitliche Beleuchtungsmodelle mit sanften Schatten und volumetrischer Beleuchtung .

Bei den meisten Engines, die diese Effekte erzielen können, handelt es sich jedoch um Weiterentwicklungen von Engines der vorherigen Generation, z. B. Unreal Engine 3 , Dunia Engine und CryEngine 2 , id Tech 5 (das mit Rage verwendet wurde und die neue Virtual Texturing- Technologie verwendet). .

Die ersten Spiele mit Unreal Engine 3 wurden im November 2006 veröffentlicht, und das erste Spiel mit CryEngine 2 ( Crysis ) wurde 2007 veröffentlicht.

Anfang der 2010er Jahre: Grafiktechnikmischungen

Weitere Verbesserungen an GPUs wie Shader Model 5 , die durch neue Grafikchipsätze wie GeForce 400 Series oder Radeon HD 5000 Series und höher ermöglicht wurden, ermöglichten Verbesserungen bei Grafikeffekten. wie z. B. Dynamic Displacement Mapping und Tessellation .

Ab 2010 wurden zwei bevorstehende Entwicklungen der wichtigsten vorhandenen Engines veröffentlicht: Unreal Engine 3 in DirectX 11 , das Samaritan Demo (und das mit Batman: Arkham City , Batman: Arkham Knight und weiteren DX11-basierten UE3-Spielen verwendet wird) und CryEngine 3 unterstützt , die Crysis 2 und Crysis 3 antreibt .

Nur wenige Unternehmen hatten über zukünftige Pläne für ihre Motoren gesprochen. Eine Ausnahme bildete id Tech 6 , der spätere Nachfolger von id Tech 5. Vorläufige Informationen zu dieser Engine, die sich noch in einem frühen Entwicklungsstadium befand, zeigten tendenziell, dass id Software in eine Richtung blickte, in der Raytracing und klassische Rastergrafiken gemischt würden. Laut John Carmack existierte die für id Tech 6 fähige Hardware jedoch noch nicht. Der erste Titel mit der Engine, Doom , wurde Mitte 2016 veröffentlicht.

Im September 2015 veröffentlichte Valve die Quelle 2 in einem Update für Dota 2 .

Siehe auch

Verweise