Das unsichtbare Nervensystem von Interwoven – Die Programmierung
Das Team der Programmierung hat bei Interwoven eine facettenreiche Aufgabe. Der erste Blick, wenn die Spieler unsere Installation betreten, fällt vermutlich auf die Bühnenarbeit oder die immersive Soundkulisse. Bei der Programmierung jedoch laufen alle peripheren Prozesse zusammen und werden logisch miteinander verschaltet. Wir wollen für die Spieler genau das Erlebnis des Konzepts erzeugen. Wir erwecken durch präzise Steuerung und Programmierung die Medien zum Leben.
Die Programmierung startet auf einem leeren Blatt Papier. Die Regie liefert die Rahmenbedingungen. Der Raum reagiert auf die Präsenz und Handlungen der Spieler.
Um diesen Anforderungen gerecht zu werden, benötigen wir ein präzises Positionstracking der Spieler durch die gesamte Installation. Zudem steuern wir Tausende LEDs, mehr als 30 Lautsprecher und diverse Interaktionsschnittstellen synchron an. Ergänzend entwickelten wir noch ein digitales Scan-Device, mit dem die Spieler ihre Umgebung untersuchen.
Um diese Vielfalt zu meistern, haben wir das Team in spezialisierte Arbeitsgruppen aufgeteilt und setzen auf verschiedene Softwareumgebungen.
Das Positionstracking
Eine besondere Herausforderung ist die genaue Verfolgung der Spielerpositionen. Dazu richten wir eine Outside-In-Tracking-Umgebung (hier: HTC Vive) ein und sorgen für die strategische Platzierung von sieben Basisstationen im Raum. Wir werten die Trackingdaten des Vive-Systems in Echtzeit aus. Es entsteht eine maßgeschneiderte Software in der Unreal Engine. Damit verteilen wir die Positionsdaten an alle anderen Prozesse. Doch eine zentrale Frage stellt sich: Wie bringen wir die Tracker an die Spieler? Diese Tracker finden ihren Platz auf den Scan-Devices und damit kommen wir auch schon zum zweiten Kapitel.

Die Scan-Devices
Unsere Installation erzählen wir auf zwei Ebenen. Zum einen erleben die Spieler die Installation direkt mit allen Sinnen, zum anderen erweitern futuristische Scan-Devices die reale Umgebung. Die Spieler sehen auf dem Display einen virtuellen Nachbau der Realität und erhalten durch Scanning weitere Informationen über die Umgebung. Für die Scan-Devices schreiben wir in der Game-Entwicklungsumgebung „Godot“ eine Software. Über das lokale Netzwerk erhalten die Geräte Echtzeit-Koordinaten vom Tracking-PC und orientieren sich präzise in der virtuellen Umgebung. Neben den logischen Programmierprozessen designen wir auch Benutzeroberflächen und ein Gehäuse.

Im Inneren verbirgt sich die Technik: ein Smartphone mit Powerbank sowie ein Mikrocontroller zum Steuern der Eingabetaste, LEDs, Vibrationsmotor und Lüfter. Außerdem sind an den Gehäusen die Tracker angebracht, wodurch wir über die ganze Installation hinweg die Positionen der Spieler verfolgen.
Diese Positionsdaten sind auch für das nächste Team essenziell: die Spiellogik.
Die Spiellogik
Hier entscheiden wir, in welchem Moment ein bestimmter Licht- oder Soundcue ausgelöst wird. Abhängig ist das von gesteuerten zeitlichen Abläufen oder Verknüpfung logischer Voraussetzungen. Gedanklich haben wir den Ablauf der Installation in acht Hauptphasen unterteilt. Sie beginnt mit dem Onboarding, gefolgt vom Briefing durch unsere Forscherin Dr. Novali und der Kalibrierung. Die Kalibrierung stellt das Tutorial dar, bei dem den Spielern der Umgang mit den Scan-Devices beigebracht wird. Die verschiedenen Hauptphasen unterteilen wir im weiteren Verlauf in Subphasen. So teilt sich die Kalibrierung in die Einführung durch Dr. Novali und die ersten Scan-Vorgänge der Spieler. Sobald alle Spieler jeweils mindestens eines der Kalibrierungsobjekte gescannt haben, geht es weiter. Auf den ersten Blick klingt das nach einer einfachen Abfrage, erfordert jedoch eine komplexe Echtzeit-Kommunikation mit den Scan-Devices, auf denen die Scans lokal stattfinden.

Wir implementieren diese Spiellogik direkt in der Unreal Engine. Es handelt sich hierbei um eine auf die Entwicklung von Videospielen spezialisierte Game Engine und eignet sich somit hervorragend für unser Vorhaben. Das Programmierteam genießt einerseits große Freiheiten in der Umsetzung, anderseits trägt dieses Team große Verantwortung für den reibungslosen Spielablauf. Gibt es einen Fehler in der Programmierung, ist das Spielerlebnis gefährdet.
Doch nicht nur die Logik, sondern auch die Lichtsteuerung und Audiosteuerung lebt von präzisen Daten.
Die Lichtsteuerung und Audiosteuerung
Neben der Steuerung von DMX-LED-Scheinwerfern synchronisieren wir Tausende individuell adressierbare LEDs. Sie sind vor allem im Innenraum der Kapsel verbaut. In der Mitte der Kapsel befindet sich der Chandelier. Ein Kronleuchter aus über 12.000 ansteuerbaren LEDs. Zusätzlich verlaufen 26 LED-Fäden entlang der Außenwand. Das gezielte räumliche Ansteuern der individuellen LEDs ist schwer. Schließlich sollen auf den LEDs nicht nur Farbverläufe, sondern vielmehr Geschichten erzählende Inhalte dargestellt werden. Auch auf leistungsstarken Medienservern erfordert die Echtzeit-Berechnung ständige Optimierungen zur Vermeidung von Performance-Engpässen.

Bei der Audioansteuerung wird uns viel Arbeit bereits durch unser Ton-Team abgenommen. Sie kümmern sich um die räumliche Verteilung der Audio-Clips und stellen sicher, dass jeder Sound aus dem richtigen Lautsprecher kommt. Bei der zeitlichen Abfolge der verschiedenen Soundcues kommt die Programmierung ins Spiel. Jeder Soundcue startet in der Spiellogik-Software und wird per OSC an eine TouchDesigner-Instanz weitergeleitet. Dort ist eine Verknüpfung zu Ableton-Live implementiert. Das Abspielen der einzelnen Soundsequenzen mit den Lichtanimationen wird so synchronisiert gestartet.
Die InteraktionsschnittstellenNeben den Scan-Devices und dem Positionstracking verbauen wir zur Erfassung der Spielerinteraktionen insgesamt 16 weitere Sensoren. Dabei unterscheidet sich an den verschiedenen Stationen die Art und Weise, wie die Spieler interagieren sollen. Die mystischen Runen im Tutorialbereich werden beispielsweise durch Berührung ausgelöst. Dabei erfassen wir mit kapazitiven Messungen die Berührung der Rune. Die Entnahme der Schallplatten im Innenraum der Kapsel messen wir mithilfe einer Lichtschranke, während das Einsetzen der Schallplatten in das Abspielgerät durch RFID-Lesegeräte umgesetzt ist. Bei dem finalen Abstimmungsring haben wir einen Rotary Encoder verbaut. Die Rotationsgeschwindigkeit messen wir und wandeln sie in Echtzeit in Steuerwerte für Licht und Ton um. Die Programmierung und Ansteuerung der Mikrocontroller sind essenziell für den Ablauf. Fehler bei der Interaktionserkennung oder Übertragungsprobleme gefährden sofort den Installationsfluss.
Zusammenfassend zeichnet sich die Programmierung bei dieser Installation durch ein facettenreiches Aufgabenfeld aus. Insgesamt werden vier verschiedene Programmiersprachen verwendet, viele individuelle Systeme über Netzwerk miteinander verschaltet und ein Großteil des Datenverkehrs über WiFi geleitet. Die größte Herausforderung liegt in der zuverlässigen Bereitstellung der Quelldaten und ihrer präzisen Verwertung – sei es in der Spiellogik, den Scan-Devices oder der Steuerung von Licht, Ton und Medien. Programmierung ist bei Interwoven unsichtbar – aber unverzichtbar. Sie ist das Nervensystem, das aus Konzepten ein Erlebnis macht.
Beitrag von Domenik Erhorn













