Hands-on Workshop: Entwicklung von interaktiven 3D-Applikationen mit der Open-Source Game Engine Godot

Mühleder, Peter; Naether, Franziska; Goldhahn, Dirk; Bleckmann, Patrice
https://zenodo.org/records/14943238
Zum TEI/XML Dokument

Einleitung

3D-Visualisierungen spielen in vielen Bereichen der Digital Humanities eine wichtige Rolle, insbesondere der Kunstgeschichte, Museologie, Archäologie und den Heritage Studies (Münster, 2022:5). Dabei stehen oft die Produktion und die Präsentation von 3D Objekten im Zentrum. Diese Workshop beschäftigt sich mit letzterem: Ziel ist es, eine Einführung in die Erstellung von interaktiven 3D-Anwendungen mittels einer general purpose game engine zu geben.

Bei einer Game Engine handelt es sich um ein Framework für die Entwicklung von Videospielen, welches ermöglicht, komplexe Echtzeit 2D- und 3D-Anwendungen zu entwickeln. Es gibt keine feste Definition über den Funktionsumfang von Game Engines, aber   general purpose game engines ’ enthalten in der Regel Komponenten oder Bibliotheken für alle relevanten Bereiche (Rendering, Physik-Simulation, Audio, Netzwerk, etc.). Darüber hinaus stellen Game Engines oft sogenannte visuelle scene editors zur Verfügung, die es erlauben, auf einfachem Wege detaillierte 3D-Szenen zu erstellen.

Die Godot Game Engine (https://godotengine.org/) wurde bereits 2014 als Open-Source-Software auf GitHub veröffentlicht (https://github.com/godotengine/godot). Seitdem wurde die Game Engine durch die Beiträge von hunderten Freiwilligen weiterentwickelt und liegt derzeit in der Version 4 vor. Mittlerweile wird die Weiterentwicklung durch die Godot Foundation, einer 2022 gegründeten NGO, unterstützt und Godot konnte sich neben Unity und Unreal Engine als eine der meistgenutzten Game Engines etablieren.

Placeholder
Abb. 1: Der Godot Editor

Potentiale von Game Engines in den DH

Game Engines können genutzt werden, sowohl um Forschungsergebnisse effektiv und immersiv zu kommunizieren, z. B. durch die Ausstellung von 3D-Rekonstruktionen in Museen, als auch durch serious games (Spiele, die primär Bildungsziele verfolgen). Mit dem Medium “Videospiel” besteht die Möglichkeit, ein potentiell breites, interessiertes Zielpublikum anzusprechen: Robert Houghton beschreibt beispielsweise, dass es nicht mehr ungewöhnlich ist, dass Historiker:innen von großen Studios für Spiele wie “Assassin’s Creed” oder “Total War” zur Beratung engagiert werden und Forscher:innen argumentieren, dass diese Spiele als Brücke zwischen ‘academic and popular history’ fungieren können (Houghton 2018:12-13).

Darüber hinaus können in der universitären Lehre Game Engines verwendet werden, um immersive experiences für den Unterricht zu bauen. So zeigen Studien über Studierende, dass die Verwendung von immersiven VR-Umgebungen ihre Studienleistungen und ihr Engagement verbesserte: “ The results of the study support the findings of   previous studies and demonstrate the positive correlation between the use of immersive technology and positive outcomes such as increased excitement for the learning process, motivation, deeper learning, and long-term retention” (Hutson/Olsen 2022:61).

Neben dem Bereichen des universitären und öffentlichen Wissenstransfers können Game Engines auch als Forschungstools verwendet werden. Sander Münster beschreibt Simulationen als wichtigen Aspekt in der Forschungsarbeit mit 3D-Visualisierungen. Methoden wie fluid simulation, lighting simulation, crowd simualtion, simulation of mechanical processes etc. können hierbei neue Einblicke und Erkenntnisse hervorbringen (Münster 2022:9). Die Umsetzung solcher Simulationen ist aber oft sehr komplex und erfordert zahlreiche hochspezialisierte technische Fähigkeiten und Ressourcen. Der Einsatz von Game Engines kann hier hilfreich sein, da derartige Simulationen auch in Videospielen zum Einsatz kommen  (z.B. physically based rendering, crowd simulation, weather simulation etc.). Die dafür entwickelten Lösungen sind oft entweder direkt in Game Engines integriert oder als Plugin verfügbar, wodurch sie auch in der Forschung eingesetzt werden können. Damit haben Game Engines den Effekt, Entwicklungszeiten und –kosten gering halten zu können (Brennan/Christiansen 2018:2).

Im Cultural-Heritage Bereich wurden Game Engines schon früh eingesetzt, um z.B. die Erzähltraditionen indigener Völker zu dokumentieren: “to preserve the historically, culturally, and sociologically significant places, infrastructure and artefacts of many remote Australian Indigenous communities for current and future generations. The use of a game engine has proven to be instrumental in engaging with young and old members of these communities alike” (Wyeld et al. 2007). Gerade im Bereich des immateriellen Kulturerbes   ergeben sich somit interessante Anwendungsgebiete auch jenseits der Darstellung von 3D-Objekten (z.   B. die Rekonstruktion von interaktiven Ritualen, Erzählungen oder Performances mittels Animations- und Sprachdaten; die Einbindung von dynamischen Soundscapes; etc.) (siehe Skublewska-Paszkowska et al. 2022).

Durch die Bemühungen und Anstrengungen von Forscher:innen und öffentlichen Einrichtungen wurden in den letzten Jahrzehnten eine Vielzahl von historischen Objekten digitalisiert und sowohl öffentlich über Museen, Forschungsdatenrepositorien oder andere offene, als auch kommerzielle Plattformen zugänglich gemacht (siehe Brennan/Christiansen 2018). Durch den Gebrauch von Game Engines können wir interaktive und immersive 3D-Anwendungen bauen, um ihnen für Lehre und Wissenstransfer den Artefakten neues Leben einzuhauchen, aber auch, um experimentelle, neue Forschungsansätze entwickeln. Die Godot Game Engine hat im Vergleich zu anderen bekannten Game Engines den Vorteil, dass sie vollständig Open-Source ist, wenig Ressourcen benötigt und aufgrund ihrer einfachen Architektur leicht zu erlernen ist, auch für Personen, die sich noch nie mit Spieleentwicklung beschäftigt haben.

Zielgruppe

Dieser Workshop richtet sich an Personen, die Interesse an einem ersten Einblick in die Entwicklung von interaktiven 3D-Anwendungen, Visualisierungen bzw. Spielen haben. Vorwissen ist dabei nicht notwendig, wobei ein Grundwissen von Programmierung (z. B. in Python) für den zweiten Teil hilfreich ist. Es ist so gedacht, dass Personen aller Erfahrungslevel etwas mitnehmen können. Daher ist der Workshop auf 20 Teilnehmer:innen beschränkt, um eine gute individuelle Betreuung zu gewährleisten.

Ablauf des Workshops

Der Workshop besteht aus zwei Teilen zu jeweils vier Stunden. Der erste Teil umfasst zunächst eine kurze Einführung über die Potentiale von interaktiven 3D-Anwendungen für die Digital Humanities. Anschließend folgt eine grundlegende Einführung zu Game Engines und Real-Time-Rendering. In der verbleibenden Zeit des ersten Blocks werden die Teilnehmer:innen in die Arbeit mit dem Editor der Godot Game Engine eingeführt, importieren 3D-Objekte und erstellen einfache 3D-Szenen.

  • Teil: Allgemeine Einführung (4h)
    • Anwendungsgebiete für interaktive 3D-Applikationen in den DH (20 min)
    • Einführung in 3D-Engines und Real-Time-Rendering (20 min)
    • Einführung in den Godot Editor (20 min)
    • Aufbau einer Godot-Anwendung: Scenes, Nodes und Ressourcen (10 min)
    • Import- und Exportworkflows von 3D-Objekten und -Szenen (30 min)
    • Aufbau einer 3D-Szene (Objekte, Belichtung, Kamera, ...) (45 min)
    • Übung: Erstellen einer 3D-Szene (45min)

    Der zweite Tel des Workshops zeigt, wie interaktive Anwendungen in Godot entwickelt werden können. Dabei wird zuerst eine kleine Einführung in die Engine-eigene - von Python inspirierte -Skriptsprache GDScript gegeben. Anschließend wird ein einfacher 3D-Actor in die Szene integriert ( first person player controlle r) sowie die Möglichkeiten der integrierten physics engine von Godot vorgestellt. Im finalen Block (“Hackathon/Jam”) werden die Teilnehmer:innen eine kleine virtuelle Ausstellung erstellen: eine 3D-Szene, in der   sich der User frei bewegen und 3D-Digitalisate betrachten kann.

    2. Teil: Interaktivität und Hackathon (4h)

    • Scripting in Godot (30 min)
    • Bewegen im 3D Raum – Implementierung eines eines einfachen first person player controlle r (30 min)
    • Physics based interaction : Collider, Rigidbodies and Raycasts (30 min)
    • DH-Hackathon/Jam: Erstellung einer kleinen virtuellen Ausstellung (120 min)

    Im Anschluss an den Workshop erhalten die Teilnehmer:innen die Möglichkeit, ihre 3D-Szenen mit dem Workshopteam zu teilen, das diese dann zusammen als eine “spielbare” digitale Gruppenausstellung veröffentlicht.

    Technische Voraussetzungen

    Workshopraum: Beamer, WLAN, ausreichend Steckdosen

    Teilnehmende: Laptop (Windows, Linux oder Mac), zur Bedienung des Godot Editors wird eine Maus empfohlen; Godot Game Engine (Cross-Platform, als ~43 MB großer Download verfügbar); optional: eigene 3D-Modelle/Digitalisate (die möglichst unter einer offenen Lizenz veröffentlicht sind)

    Workshopteam

    Peter Mühleder – Wissenschaftlicher Mitarbeiter im KompetenzwerkD an der Sächsischen Akademie der Wissenschaften zu Leipzig mit Fokus auf Research Software Engineering. Verfügt über sechs Jahre Erfahrung in der Umsetzung von Software-Projekten mit Godot und weiteren Game Engines (in Coding da Vinci Hackathons, Game-Jams, und als Freelance Game Developer).

    Franziska Naether - Wissenschaftliche Mitarbeiterin im KompetenzwerkD an der Sächsischen Akademie der Wissenschaften zu Leipzig mit Fokus u. a. auf digitalen Ausstellungen. Hat Erfahrungen im analogen und digitalen Kuratieren im In- und Ausland sowie in der 3D-Digitalisierung antiker Artefakte (u. a. Digital Rosetta Stone Project, South Africa, Greece and Rome: A Digital Museum).

    Dirk Goldhahn – Wissenschaftlicher Mitarbeiter im KompetenzwerkD an der Sächsischen Akademie der Wissenschaften zu Leipzig   mit Fokus u. a. auf digitale Forschungsmethoden und Datenmodellierung.

    Patrice Bleckmann – Student der Informatik an der Universität Leipzig im Bereich Bild- und Signalverarbeitung. Seit 2024 Hilfskraft im KompetenzwerkD im Bereich Research Software Engineering.


    Bibliographie

    • Brennan, Matthew und Leif Christiansen . 2018. „Virtual Materiality: A Virtual Reality Framework for the Analysis and Visualization of Cultural Heritage 3D Models“. In Digital Heritage 2018 (Conference Paper).
    • Houghton, Robert . 2018. „World, Structure and Play: A Framework for Games as Historical Research Outputs, Tools, and Processes“. In Práticas da História , 7, 11-43.
    • Hutson, James und Trenton Olsen . 2022. „Virtual Reality and Art History: A Case Study of Digital Humanities and Immersive Learning Environments“. In Journal of Higher Education Theory and Practice , 22(2), 50-65.
    • Münster, Sander . 2022. „Digital 3D Technologies for Humanities Research and Education: An Overview“. In Appl. Sci. ,12, 2426.DOI: 10.3390/app12052426.
    • Skublewska-Paszkowska, Maria, Marek Milosz, Pawel Powroznik und Edyta Lukasik . 2022. „3D technologies for intangible cultural heritage preservation—literature review for selected databases“. In Heritage Science , 10:3. DOI: 10.1186/s40494-021-00633-x
    • Wyeld, Theodor G., Joti Carroll, Craig Gibbons, Brendan Ledwich, Brett Leavy, James Hills und Michael Docherty . 2007. „Doing Cultural Heritage Using the Torque Game Engine: Supporting Indigenous Storytelling in a 3D Virtual Environment“. In International Journal of Architectural Computing, 418-435. DOI: 10.1260/147807707781514931.