Blender Game Engine
Die Blender Game Engine, abgekürzt oft auch BGE, ursprünglich Ketsji genannt, ist eine Spiel-Engine, die in Blender, einer freien 3D-Grafiksoftware, integriert ist. Sie wurde in C++ als eine größtenteils unabhängige Komponente geschrieben und unterstützt Features wie z. B. Python-Programmierung und OpenAL-3D-Sound.
Blender Game Engine | |
---|---|
Elemente eines Rennspiels in der Blender Game Engine | |
Basisdaten | |
Entwickler | Blender Foundation |
Aktuelle Version | 2.76b (3. November 2015) |
Betriebssystem | plattformübergreifend |
Programmiersprache | C, C++ und Python |
Lizenz | GPL (Freie Software) |
https://www.blender.org/ |
Geschichte
Erwin Coumans und Gino van den Bergen entwickelten im Jahr 2000 die Blender Game Engine. Ihr Ziel war, ein marktfähiges Produkt zu entwickeln, mit dem Computerspiele und andere interaktive Anwendungen leicht und benutzerfreundlich erstellt werden können. Diese Anwendungen sollten sowohl als Standalone-Version oder mit einem Plug-in auf Websites eingebettet funktionieren. Dieses Plug-in wurde jedoch eingestellt, da es Sicherheitsbedenken mit Python gab, jedoch wurde später versucht, das Projekt wiederzubeleben (es wurde überlegt, eine Alpha-Version für den Internet Explorer und Firefox zu entwickeln und COLLADA zu unterstützen). Ein anderes Plug-in namens Burster[1] tauchte auf, das sicheres Spielen mit Unterstützung von Verschlüsselungen auf Websites ermöglichte.
Da der Code der Physik-Programmbibliothek (SUMO) nicht unter die Open-Source-Lizenz fiel, als der Rest von Blender dies tat, funktionierte die Blender Game Engine bis zur Version 2.37a nicht.
Blender Version 2.41 war fast vollständig der Spiel-Engine gewidmet.[2]
GLSL-Shader und Soft-Body-Spielphysik wurden in Version 2.48 implementiert, um die Spiel-Engine wieder den modernen Spiel-Engines anzunähern.[3] Sie nutzt OpenGL, um mit der Grafik-Hardware zu kommunizieren.
Während des Google Summer of Code 2010 wurden die Open-Source-Navigation-Mesh- und Pathfinding-Programmbibliotheken, Recast and Detour,[4] implementiert. Jedoch wurden diese erst 2011 in den Hauptentwicklungszweig eingefügt. Zudem wurde Audaspace entwickelt, um Python bessere Audiokontrolle zu geben. Diese Programmbibliothek nutzt OpenAL und SDL.
Funktionen
Die Blender Game Engine nutzt ein System grafischer Bausteine, sogenannter „Logic Bricks“. Es gibt drei Arten von Logic Bricks:
- Sensoren(Sensors): Sie kontrollieren, ob der Benutzer Eingaben (Tastendrücke etc.) tätigt, oder etwas im Spiel verändert wird. Ist eine bestimmte Bedingung gegeben, wird ein Signal an die verbundenen Controller gesendet.
- Controller: Sie sind die „wichtigsten“ Logic Bricks. Sie steuern die Sensoren und Actuatoren, indem sie die Signale weiterverarbeiten. Dies kann mithilfe von logischen Operatoren oder Python-Skripten umgesetzt werden.
- Actuatoren (Actuators): Sie führen bei Aktivierung durch ein entsprechendes Signal eine Aktion aus.
Zu den Funktionen bzw. Bestandteilen der Blender Game Engine gehören:
- der grafische Logik-Editor zum Festlegen von Verhaltensweisen ohne Programmieren
- Kollisionserkennung von Objekten und Spielphysik mit der Bullet-Physik-Engine, die für die PlayStation 3 entwickelt wurde
- eigenständige Kollisionserkennung für Rigid-Body-Simulationen
- Unterstützung von Fahrdynamik inklusive Feder-Reaktionen, Abdämpfung, Reifenreibung etc.
- eine Python API für komplexere Aufgaben wie z. B. künstliche Intelligenz
- Unterstützung aller OpenGL-Lichtarten inklusive Transparenz, animierten Texturen sowie Reflexion-Mapping
- Unterstützung für Textur-„Blending-Modes“, pixelbasierte Beleuchtung, dynamische Beleuchtung, viele Mapping-Arten, GLSL Vertex Painting, Cel Shading (ohne Umrandungen) und Normal Mapping sowie Parallax Mapping
- Wiedergabe von Spielen und interaktiven Anwendungen ohne Kompilieren oder Präprozessor
- Wiedergabe von Audio
- Möglichkeit, Szenen auf unterschiedliche Ebenen zu legen, um z. B. eine grafische Benutzeroberfläche darzustellen
Systemanforderungen
Um alle Funktionen von Blender angemessen nutzen zu können, sollten die Mindestanforderungen gegeben sein:[5]
Unterstützte Betriebssysteme:
Mindestanforderungen | Empfohlene Hardware | Optimale Hardware | |
---|---|---|---|
Prozessor | 32-Bit-Dual-Core-Prozessor mit SSE2-Unterstützung | 64-Bit-Quad-Core-Prozessor | 64-Bit-Eight-Core-Prozessor |
RAM | 2 GB RAM | 8 GB RAM | 16 GB RAM |
Grafikkarte | OpenGL 2.1 kompatible Grafikkarte mit mindestens 512 MB RAM | OpenGL 3.2 kompatible Grafikkarte mit 2 GB RAM | zwei OpenGL 3.2 kompatible Grafikkarten mit 4 GB RAM |
Bildschirm | 24-bit-Bildschirm (Mindestauflösung: 1280 × 768 Pixel) | 24-bit-Bildschirm mit Full-HD-Auflösung (1920 × 1080 Pixel) | zwei 24-bit-Bildschirme mit Full-HD-Auflösung |
Eingabegeräte | Maus oder Touchpad | Maus mit drei Maustasten | Maus mit drei Maustasten und Grafiktablett |
Ende der bisherigen Game Engine und zukünftige Entwicklung
Ton Roosendaal, der Gründer der Blender Foundation, schrieb noch 2013[6], dass die Blender Game Engine in der Zukunft als ein „Interaktiver Modus“ für Spiel-Prototypen, Architekturvisualisierungen und wissenschaftliche Simulationen fest in Blender integriert werden soll. Der Blender-Entwickler Martijn Berger gab 2015 an, dass die Spiel-Engine möglicherweise entfernt werde, falls für Blender Version 2.8 keine zufriedenstellende Lösung gefunden wird.[7] Im April 2018 wurde das endgültige Ende der Game Engine in der bisherigen Form mitgeteilt – man arbeite an einer Alternative, die aber nichts mehr mit der bekannten Engine zu tun haben werde[8].
Galerie
- Blender Game Engine 2.42 Screenshot
- Blender Game Engine 2.42 Screenshot
- Blender GLSL Shader Node-Editor 2.42 Screenshot
- Logic Bricks und Python-Programmierung
- Screenshot aus Yo Frankie!
Nennenswerte Spiele
- Yo Frankie!
- Dead Cyborg – Ein kostenloses, spendenbasiertes Sci-Fi Abenteuer-Spiel.
- Sintel The Game
- Boro-Toro – Ein von DarkMatter Designs entwickeltes Side-Ccrolling Plattform-Puzzle-Spiel, welches 2009 den BAFTA „Ones to Watch“ Award gewonnen hat.[9]
- Krum: Edge of Darkness – Ein auf Steam verfügbares Hack-N-Slash-Abenteuer-Spiel.
Lesenswert
- Blender (Software)
- Blend4Web, Blender-basierte Spiel-Engine für Onlinespiele
- Bullet-Physik
- Panda3D
- Pygame
- Crystal Space
- Verge3D ist ein Blender-basierte Echtzeit-Renderer und ein Toolkit zur Erstellung interaktiver 3D-Anwendungen auf Websites
Weblinks
- Offizielle Website (englischsprachig)
- Blender Artists Forum – Game Engine (englischsprachig)
- blend.polis Forum – Game Engine (deutschsprachig)
- Blender Handbuch (englischsprachig)
Einzelnachweise
- Share your Blender files. In: geta3d.com. Abgerufen am 12. März 2016.
- Dev:Ref/Outdated/Release Notes/2.41 – BlenderWiki. (Nicht mehr online verfügbar.) In: wiki.blender.org. Archiviert vom Original am 11. Februar 2016; abgerufen am 11. März 2016. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- 2.48 Released! In: BlenderNation. Abgerufen am 11. März 2016.
- recastnavigation/recastnavigation. Abgerufen am 24. Juni 2018 (englisch).
- Blender Foundation: Requirements – blender.org – Home of the Blender project – Free and Open 3D Creation Software. In: blender.org. Abgerufen am 11. März 2016.
- Blender roadmap – 2.7, 2.8 and beyond. In: Blender. Abgerufen am 1. März 2014.
- 2.8 project developer kickoff meeting notes. In: Blender. Abgerufen am 12. November 2015.
- https://www.blendernation.com/2018/04/24/blender-today-live-rip-blender-internal-rip-game-engine/
- Ones to Watch Award in 2009. In: BAFTA. Archiviert vom Original am 25. März 2010. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. Abgerufen am 3. März 2010.