Das Buch zu Game-Engineering
Grundlegende Konzepte und Techniken
Hier finden Sie alle Informationen zu meinem geplanten Buch "Game-Engineering - Grundlegende Konzepte und Techniken". Es soll ca. 400 Seiten haben und beim Carl Hanser Verlag im August 2026 erscheinen. Es kann bereits über https://www.hanser-fachbuch.de/Game-Engineering/978-3-446-48533-4 vorbestellt werden.
Wie funktionieren moderne Game Engines unter der Haube – ganz unabhängig von Unity, Unreal oder Godot?
Dieses Buch liefert die erste umfassende, deutschsprachige Einführung in den Aufbau moderner Game Engines aus Sicht der Softwaretechnik. Statt sich auf eine bestimmte Engine zu beschränken, vermittelt es universelle Architekturprinzipien, Subsysteme und Algorithmen – verständlich, technisch fundiert und praxisnah.
Von Rendering-Pipelines, Animation und Physik über State Machines, Audio, Ressourcenmanagement und Netzwerktechnik bis hin zu Performance-Optimierung, Algorithmen und KI – das Buch gibt einen vollständigen Einblick in die Funktionsweise komplexer Spielsysteme.
Mit anschaulichen Beispielen, klarer Struktur und einem Fokus auf softwaretechnische Klarheit ist es ein unverzichtbares Grundlagenwerk für Studierende, Entwickler und alle, die verstehen wollen, wie professionelle Spiele entstehen. Starten Sie noch heute Ihre Reise in die faszinierende Welt der Spieleentwicklung!
Zielgruppen:
✅ Dozierende und Studierende in der Spiele-Entwicklung, der Medieninformatik und der Informatik im Allgemeinen
✅ Entwickler, die Game Engines verstehen statt nur benutzen wollen
✅ Indie-Entwickler, Tech Artists und Softwarearchitekten
Besonderheiten des Buchs:
✅ Engine-unabhängig erklärt
✅ Softwarearchitektur im Fokus
✅ Moderne Techniken: ECS, DOD, Raytracing, prozedurale Generierung
✅ Python-Beispiele ohne C++-Barriere
✅ Umfangreiche Zukunftsbetrachtung
Das geplante Inhaltsverzeichnis, noch unter Vorbehalt:
1 Einführung in Game Engines
1.1 Die kleinen und die großen Entwickler
1.2 Game Engines, Frameworks und Bibliotheken
1.3 Aufgaben einer Game Engine
1.4 Die Bedeutung der Softwaretechnik
1.5 Zielgruppen und Einsatzbereiche
1.6 Ein historischer Überblick
1.6.1 Die frühen Jahre: Spiele ohne Engine
1.6.2 Der Schritt zur Modularität: Die 1990er-Jahre
1.6.3 Die 2000er-Jahre: Technologische Spezialisierung und plattformübergreifende Entwicklung
1.6.4 Moderne Multi-Plattform-Engines: Flexibilität und universelle Anwendungen
1.7 Was dieses Buch ist und was nicht
1.8 Ausblick auf die weiteren Kapitel
2 Architektur moderner Game Engines
2.1 Die Game Loop als Steuerzentrum
2.1.1 Der Faktor Zeit
2.1.2 Die Eingabephase
2.1.3 Die Logikphase
2.1.4 Die Renderingphase
2.2 Subsysteme und ihre Kommunikation
2.2.1 Ein Überblick über die Subsysteme
2.2.2 Kommunikationsarten
2.3 Plattformübergreifende Entwicklung
2.4 Klassische Programmierparadigmen
2.4.1 Prozedurale Denkweise
2.4.2 Objektorientierte Denkweise
2.4.3 Praxisbeispiel: Objekte in Aktion
2.5 Komponentenbasierte Architektur mit Game Objects
2.5.1 Game Objects
2.5.2 Klassische Komponenten
2.5.3 Synchronisierungs- und Lifecycle-Management
2.5.4 Komponenten in Game Engines
2.5.5 Organisation und Verwaltung von Game Objects
2.5.6 Erstellung und Erweiterung von Game Objects
2.5.7 Best Practices und Fallstricke
2.5.8 Praxisbeispiel: Game Objects in Aktion
2.6 Das Entity-Component-System
2.6.1 Entitäten, Komponenten und Systeme
2.6.2 Datenorientierung und Cache-Friendliness
2.6.3 ECS in Game Engines
2.6.4 ECS-Komponentenbeispiele
2.6.5 Praxisbeispiel: Implementierung eines einfachen ECS
2.6.6 Gegenüberstellung der Architekturen
2.7 Zustandsmodelle und Zustandsautomaten
2.7.1 Klassische Zustandsautomaten
2.7.2 Anwendung bei Game Objects und ECS
2.7.3 Komponentenbasierte Zustandssteuerung
2.7.4 Werkzeuge zur Umsetzung von Zustandsautomaten
2.7.5 Bewertung und Vergleich mit Alternativen
3 Benutzerinteraktion
3.1 Grundlagen der Benutzerinteraktion
3.1.1 Direkte und indirekte Steuerung
3.1.2 Eingabegeräte und Technologien
3.1.3 Immersive Technologien und Zukunftstrends
3.2 Eingabeverarbeitung
3.2.1 Erfassung und Interpretation von Eingaben
3.2.2 Filterung, Deadzones und Glättung von Eingabedaten
3.2.3 Optimierung der Eingabeverarbeitung und Latenzreduktion
3.2.4 Eingabeverarbeitung in Mehrspieler-Umgebungen
3.3 Benutzerinteraktion und Gameplay-Logik
3.3.1 Steuerung von Spielfiguren und Fahrzeugen
3.3.2 Verbindung zwischen Eingabe, Spiellogik und physikalischer Simulation
3.3.3 KI-Reaktionen auf Benutzereingaben
3.4 Interaktion und Benutzererfahrung
3.4.1 Bedeutung von Feedback für Kontrolle und Immersion
3.4.2 Faktoren einer positiven Benutzererfahrung
3.5 Gestaltung von intuitiven Steuerungen
3.6 Barrierefreiheit
3.6.1 Anpassung der Steuerung für motorische Einschränkungen
3.6.2 Visuelle und auditive Unterstützung
3.6.3 Kognitive Barrierefreiheit und Komfortfunktionen
3.6.4 Fazit zur Barrierefreiheit
3.7 Benutzerinteraktion in konkreten Engines
3.7.1 Eingabeverarbeitung in Unity
3.7.2 Eingabeverarbeitung in Unreal Engine
3.7.3 Eingabeverarbeitung in Godot Engine
3.8 Fazit
4 Rendering-Systeme
4.1 Einführung in das Rendering
4.1.1 Grundlagen der Computergrafik
4.1.2 2D- und 3D-Rendering
4.1.3 Echtzeit-Rendering vs. Offline-Rendering
4.2 Die Rendering-Pipeline
4.2.1 Überblick über die Stages
4.2.2 Fixed-Function-Pipeline vs. programmierbare Pipeline
4.2.3 GPU-Architektur und grundlegende Shader-Modelle
4.3 Vertexverarbeitung & Projektion
4.3.1 Modell-, Welt- und Kamera-Transformation
4.3.2 Die Projektionsmatrix
4.3.3 Kameraeigenschaften und Frustumdefinition
4.3.4 Anwendung in Game Engines
4.4 Primitive-Zusammenstellung & Clipping
4.4.1 Primitive-Typen: Punkte, Linien, Dreiecke
4.4.2 Primitive Assembly und Index-Buffer
4.4.3 Frustum Clipping & Guard Band
4.4.4 Backface Culling und LoD-Vorfilterung
4.5 Rasterisierung & Fragmentverarbeitung
4.5.1 Rasterisierung: Scan Conversion und Interpolation
4.5.2 Fragment Shader: Grundlagen und Aufgaben
4.5.3 Lichtquellenmodelle und Beleuchtungsberechnung
4.5.4 Materialsysteme und Shadingmodelle
4.5.5 Texturen und Mapping-Techniken
4.5.6 Physically Based Rendering (PBR)
4.5.7 Implementierung von Licht und Materialien in Game Engines
4.5.8 Fallbeispiel Metahuman
4.6 Fragmenttests & Ausgabevermischung
4.6.1 Z-Buffering und Sichtbarkeit
4.6.2 Stencilbuffer und Maskierung
4.6.3 Alpha-Test, Discard, Early-Z
4.6.4 Blending und Transparenzeffekte
4.6.5 Multi-Render Targets und Output-Merging
4.7 Framebuffer & Post-Processing
4.7.1 Framebuffer-Aufbau und Output
4.7.2 HDR-Rendering und Tone Mapping
4.7.3 Bloom, Motion Blur und Depth of Field
4.7.4 Anti-Aliasing
4.7.5 Screen-Space Effekte
4.7.6 Post-Processing-Pipelines in Engines
4.8 Szenengraph & Draw Call-Management
4.8.1 Hierarchische Transformationen und Parenting
4.8.2 Sichtbarkeitsprüfung (Frustum Culling)
4.8.3 Sortierung, Batching und Instancing
4.8.4 GPU-Submission: Draw Calls & Render Passes
5 Physiksimulation in Game Engines
5.1 Einführung in die Physik von Game Engines
5.2 Grundlegende Konzepte der Physiksimulation
5.2.1 Grundlagen der Bewegungsphysik
5.2.2 Kollisionserkennung und -behandlung
5.2.3 Constraints und Gelenke
5.3 Physikalische Bewegungssysteme
5.3.1 Kinematik und Dynamik
5.3.2 Bewegungsgleichungen
5.3.3 Numerische Integration in Echtzeit
5.3.4 Fahrzeugdynamik
5.3.5 Flug- und Raumfahrtdynamik
5.4 Soft-Body-Simulationen
5.4.1 Masse-Feder-Modell
5.4.2 Finite-Elemente-Methode (FEM)
5.4.3 Zerstörungssimulation und prozedurales Fracturing
5.4.4 Finite-Volumen-Methode (FVM)
5.4.5 Material Punkt Methode (MPM)
5.4.6 Cloth-Simulation
5.5 Simulationen und Partikel
5.5.1 Diskrete-Elemente-Methode (DEM)
5.5.2 Smoothed Particle Hydrodynamics (SPH)
5.5.3 Dissipative Particle Dynamics (DPD)
5.5.4 Grid-Based-Simulationen
5.5.5 Hybrid-Methoden für optimierte Simulationen
5.6 Praxisbeispiele
5.6.1 Pygame: Rendering und Physik in 2D
5.6.2 Ursina: 3D-Beispiele mit Partikeln und Shadern
5.6.3 Übergang zu professionellen Engines
6 Animation und Bewegungssteuerung
6.1 Einführung in Animationen
6.1.1 Bedeutung für das Spielerlebnis
6.1.2 Herausforderungen bei der Implementierung
6.1.3 Technische Grundlagen: FBX-Format und Rigging
6.2 Arten von Animationen in Game Engines
6.2.1 Keyframe-Animation
6.2.2 Prozedurale Animation
6.2.3 Physikbasierte Animation
6.2.4 Hybride Animation
6.2.5 Praktische Ressourcen: Mixamo als Animations-Bibliothek
6.3 Animationssysteme in Game Engines
6.3.1 Ein kurzer Vergleich verschiedener Game Engines
6.3.2 Steuerung von Animationsgraphen
6.3.3 Retargeting-Techniken
6.4 Bewegungssteuerung von Charakteren und Objekten
6.5 Inverse Kinematik (IK) in Animationen
6.5.1 Grundlagen und Anwendung der inversen Kinematik
6.5.2 Animation Layers
6.6 Übergänge und Animation Blending
6.6.1 Animation State Machines und Blend Trees
6.6.2 Moderne Entwicklungen in der Animation
6.7 Trigger und Events in Animationen
6.8 Praxisbeispiel zu Animation und Bewegung
6.8.1 Charakter und Animationen aus Mixamo exportieren
6.8.2 Installation von Unity und das erste Projekt
6.8.3 Integration der FBX-Dateien aus Mixamo
6.8.4 Fazit zum Beispiel
7 Audio
7.1 Grundlagen der Audiotechnik
7.1.1 Digitale Audiowiedergabe
7.1.2 Psychoakustik
7.1.3 Audioformate und Kompression
7.1.4 Räumliche Audiowiedergabe
7.1.5 Schallverdeckung
7.2 Audio-Architektur
7.2.1 Soundquellen und Audio-Manager
7.2.2 Audioprozessoren (DSP)
7.2.3 Wiedergabesystem
7.2.4 Signalfluss
7.3 Dynamische Audiosteuerung
7.3.1 Adaptive Musik
7.3.2 Dynamische Soundeffekte
7.3.3 Situationsabhängiges Sound-Mixing
7.3.4 Parametrische Audiosteuerung
7.4 Synchronisation mit anderen Subsystemen
7.4.1 Audio und Animation
7.4.2 Audio und Physik
7.4.3 Audio und KI
7.4.4 Audio und andere Subsysteme
7.5 Praxisbeispiel: Implementierung eines einfachen Audio-Systems
7.6 Anwendungsbeispiele und Entwurfsmuster aus der Praxis
7.6.1 Materialabhängige Fußschritte
7.6.2 Adaptive Soundeffekte und räumliche Audio-Integration
7.6.3 Sound als Spannungsmechanik in Horror-Games
7.7 Fazit und Ausblick
8 Ressourcenmanagement
8.1 Ressourcen in Spielen
8.2 Ressourcenmanagement-Strategien
8.3 Ressourcenpools
8.4 Asset-Management-Systeme
8.5 Optimierungstechniken
8.6 Herausforderungen beim Ressourcenmanagement
8.6.1 Speicherverwaltung und Speicherfragmentierung
8.6.2 Ladezeiten und asynchrones Streaming
8.6.3 Plattformunterschiede
8.6.4 Abhängigkeiten und Asset-Konsistenz
8.6.5 Dynamische Ressourcenverwaltung zur Laufzeit
8.6.6 Speicherlecks und Performanceprobleme
8.7 Praxisbeispiel: Ressourcenpools mit Pygame
9 Netzwerktechnik & Multiplayer
9.1 Einführung in die Netzwerktechnik in Spielen
9.1.1 Relevanz von Netzwerken in modernen Spielen
9.1.2 Herausforderungen in Echtzeit-Mehrspielersystemen
9.1.3 Lokale und Online-Multiplayer
9.2 Grundlagen der Netzwerkarchitektur
9.2.1 Client-Server-Architektur
9.2.2 Peer-to-Peer-Architektur
9.2.3 Hybride Architekturen
9.2.4 Architekturauswahl nach Spieltyp
9.3 Synchronisation und Replikation
9.3.1 Zustandsreplikation
9.3.2 Ereignisbasierte Synchronisation
9.3.3 Delta-Kompression und Bandbreitenoptimierung
9.3.4 Interpolation und Extrapolation
9.3.5 Latenzkompensation
9.4 Latenzmanagement und Fehlerkorrektur
9.4.1 Ursachen von Latenz
9.4.2 Lag Compensation
9.4.3 Forward Error Correction
9.4.4 Netzwerkpriorisierung
9.4.5 Netzwerk-Smoothing
9.5 Netzwerkprotokolle in Spielen
9.5.1 TCP und seine Eigenschaften
9.5.2 UDP und seine Eigenschaften
9.5.3 Hybride Protokollkombinationen
9.6 Matchmaking und Sitzungsmanagement
9.6.1 Skill-basierte und hybride Matchmaking-Modelle
9.6.2 Lobby-Management
9.6.3 Host-Migration und Sitzungsstabilität
9.7 Sicherheit und Datenschutz
9.7.1 Cheat-Prävention und Anti-Cheat-Systeme
9.7.2 Account-Sicherheit und MFA
9.7.3 Datenschutz und rechtliche Rahmenbedingungen
9.7.4 Voice- und Chatüberwachung im Spannungsfeld
9.7.5 Zukunftstrends wie Zero-Trust und Blockchain
9.8 Skalierung und Cloud-Technologien
9.8.1 Lastverteilung und Sharding
9.8.2 Einsatz von Cloud-Services
9.8.3 Edge Computing im Multiplayer-Kontext
9.9 Netzwerkbibliotheken und Protokolle für Spiele
9.9.1 Überblick und Auswahlkriterien
9.9.2 Grundlegende Transportprotokolle
9.9.3 Web-Technologien für Multiplayer
9.9.4 Reliable-UDP-Bibliotheken
9.9.5 Gaming-spezifische SDKs und Dienste
9.9.6 Echtzeit-Medienprotokolle
9.9.7 Sicherheitsprotokolle
9.9.8 Entscheidungshilfe und Zusammenfassung
9.10 Praxisbeispiele und Best Practices
9.10.1 Architektur eines einfachen Echtzeit-Multiplayers
9.10.2 Tickrate und Synchronisation im Pygame-Projekt
9.10.3 Best Practices für robuste Multiplayer-Implementierungen
9.10.4 Ein einfaches Multiplayer-Spiel
9.11 Netzwerktechnik-spezifischer Ausblick
9.11.1 Trends in Netzwerkprotokollen
10 Algorithmen in Game Engines
10.1 Zufalls- und Wahrscheinlichkeitsalgorithmen
10.1.1 Zufallszahlengeneratoren
10.1.2 Monte-Carlo-Methoden für Simulationen und Tests
10.2 Wegfindung und KI
10.2.1 Dijkstra-Algorithmus: Alternative für kürzeste Wege
10.2.2 A*-Algorithmus: Grundlagen und Anwendungsbeispiele
10.2.3 Steering-Behaviors: Patrouille, Gegnerverfolgung, Flucht, Hindernisvermeidung
10.2.4 Schwarmverhalten und Gruppendynamiken
10.3 Kollisionsalgorithmen
10.3.1 Die Bounding Volume Hierarchy
10.3.2 Das Separating Axis Theorem
10.3.3 Sweep and Prune
10.3.4 Praxis: Aufbau eines Kollisionssystems für ein 2D-Spiel
10.4 Prozedurale Generierung
10.4.1 Grundlagen prozeduraler Generierung
10.4.2 Perlin Noise und Simplex Noise: Landschaften und Texturen
10.4.3 Zelluläre Automaten: Dungeon-Generierung
10.4.4 L-Systeme für Vegetation und Strukturen
10.5 Szenenmanagement und Raumaufteilung
10.5.1 Quadtrees und Octrees: Kollision und Sichtprüfung
10.5.2 BSP-Trees: Partitionierung von Spielwelten
10.5.3 k-d-Bäume: Nächste Nachbarn und Kollisionen
10.5.4 Praxis: Optimierung eines Szenengraphen
10.6 Rendering- und Audioalgorithmen
10.6.1 Ray Tracing und Ray Casting: Grundlagen und Unterschiede
10.6.2 Deferred Shading und Level of Detail (LoD): Optimierungstechniken
10.6.3 Fast Fourier Transform (FFT): Audioprozessierung
10.6.4 DSP-Filter für Hall- und Klangmanipulationen
10.6.5 Praxis: Simpler Shader und Audioeffekte
10.7 Zusammenfassung
11 Performance und Optimierung
11.1 Bedeutung der Optimierung
11.2 Optimierung von Game Objects
11.2.1 Effiziente Datenstrukturen für Objekte
11.2.2 Object Pooling und speicherschonende Instanziierung
11.2.3 Lazy Loading und gezieltes Aktivieren/Deaktivieren
11.2.4 Update-Strategien
11.2.5 Effizientes Management großer Mengen an Objekten
11.3 Optimierung von lokalen Benutzereingaben
11.4 Rendering-Optimierungen
11.5 Physik-Optimierungen
11.6 Animation-Optimierungen
11.7 Audio-Optimierungen
11.8 Optimierung von Zustandsautomaten
11.9 Profiling für Performanceoptimierungen
11.10 Debugging von Performanceproblemen
11.11 Plattform- und hardwarespezifisches Tuning
11.12 Zusammenfassung
12 Zukunft von Game Engines: Technik, Verantwortung und Perspektiven
12.1 Game Engines im Wandel
12.1.1 Von monolithischen Systemen zu modularen Plattformen
12.1.2 Entkopplung von Hardware, Laufzeit und Produktionsumgebung
12.2 Offene Ökosysteme und Open Source
12.2.1 Die Rolle von Open Source im Game Engineering
12.2.2 Vergleich offener Game-Engine-Ökosysteme
12.3 Zentrale technologische Entwicklungslinien
12.3.1 Skalierbarkeit, Performance und adaptive Systeme
12.3.2 Künstliche Intelligenz in Entwicklung und Produktion
12.3.3 Generative Systeme für Content und Toolchains
12.3.4 Immersive Plattformen: VR, AR und Mixed Reality
12.3.5 Cloudbasierte Ausführung und Streaming
12.4 Nachhaltigkeit und Wirtschaftlichkeit
12.5 Ethische Verantwortung und Datenbewusstsein
12.6 Die Rolle des Menschen in der zukünftigen Spieleentwicklung
|
nach oben Kontakt - Impressum - Datenschutz |
|
|
© 2025, Prof. Dr. Frank Dopatka Alle Rechte vorbehalten |
letzte Aktualisierung: 01.05.2026, 14:55 Uhr |


