TRACER ist eine software-unabhängige Kommunikationsinfrastruktur und ein Toolset, welches Open-Source-Tools in eine Produktionspipeline integriert und die Interoperabilität zwischen open-source und proprietären Tools ermöglicht. Mit einem Fokus auf Echtzeit-Kollaboration und XR-Produktionen bietet TRACER eine operative Ebene für den Austausch von Daten und Updates, einschließlich Animations- und Szenendaten. Dazu gehört auch die Synchronisierung von Szenen-Aktualisierungen in verschiedenen Anwendungen (Blender, UE, Unity, VPET, etc.), die Harmonisierung von Parametern zwischen verschiedenen Engines / Renderern, eine einheitliche Szenenübertragung und Szenenexport. Darüber hinaus kann es als Animations-Host agieren, um XR- und Virtual Production-Produktionen zu unterstützen, um Animationen in Echtzeit-Umgebungen zu verwenden, auszutauschen und zu steuern. TRACER kann in jede GameEngine (z. B. Unreal) oder DCC (z. B. Blender, Maya, ...) integriert und über die bereitgestellten offenen APIs und Protokolle genutzt werden. Das Framework ist open-source und kann über unseren GitHub-Repository bezogen werden, welches auch VPET, AnimHost und DataHub zum Download bereit stellt.
VPET – die Virtual Production Editing Tools - stellt eine Weiterentwicklung aus vorangegangenen Forschungsprojekten dar. Während der Pandemie wurde der Versuch unternommen, die grundlegenden Funktionen für allgemeinere XR-Anwendungen verfügbar zu machen - das Ergebnis: TRACER FOUNDATION. Durch eine Überarbeitung und Neuimplementierung wurden die Funktionen von VPET in ein modernes, modulares und erweiterbares Framework übertragen. VPET 2.0 dient damit als Beispielimplementierung im TRACER FOUNDATION Framework.
TRACER FOUNDATION bietet folgende Funktionen:
‣ Offenes Übertragungsprotokoll, das 3D-Szenen aus beliebigen DCCs, Game Engines oder XR-Anwendungen bereitstellt
‣ Synchronisierte Szenenaktualisierungen für Echtzeit-Kollaboration und Multi-User-Anwendungen
‣ Generalisierte Parameterdarstellung und -synchronisierung
‣ Netzwerkkommunikation über netMQ/zeroMQ
‣ AR-Unterstützung (inkl. Tracking und Markern)
‣ Benutzeroberfläche mit Touch-Funktion (Tasten und Gesten-Steuerung)
‣ Erweiterbare, modulbasierte Architektur
Und vieles mehr...
Die TRACER Foundation selbst wurde in C# entwickelt und ist somit geeignet für Desktop-, VR- oder XR-Plattformen.
Im Rahmen des Projekts MAX-R werden Erweiterungen für TRACER realisiert: AnimHost und DataHub.
DataHub wird als softwareunabhängige Kommunikationsinfrastruktur und Toolset dienen, um Open-Source-Tools in die Pipeline von Virtual Production- und XR-Produktionen einzubinden. Es schafft Interoperabilität zwischen open-source und proprietären Tools und zielt auf Echtzeit-Anwendungen ab.
Gleichzeitig kann DataHub eingehende Daten speichern und als Szenen-Server fungieren. Dies ermöglicht das Speichern und Laden vollständiger Szenen sowie deren Änderungens-Steps im Laufe der Zeit.
Mit Technologien wie markerlosem, video-basiertem Motion Capturing und KI-generierter Charakteranimation verändern sich die Pipelines für animierte Filme. Filmproduktionen, die Game Engines für das Rendering nutzen, verlangen zunehmend nach Möglichkeiten, durch die sowohl Künstler*innen als auch Regisseur*innen interaktiv und in Echtzeit Animationen verändern können. Während beispielsweise KI-basierte Generatoren für menschliche Charakteranimationen in der Forschung existieren, ist deren Anwendung in der Produktion animierter Filme eher spärlich. Die Integration solcher Lösungen in standardisierte DCC-Anwendungen, Game Engines usw. ist ein langwieriger Prozess, insbesondere in einem Bereich, in dem fortlaufend fortschrittliche und verbesserte Lösungen entstehen. Darüber hinaus erfordert ihre interaktive Natur in Verbindung mit dem Bedarf an Kontrolle durch Künstler*innen neue Benutzeroberflächen und Pipelines.
AnimHost geht als Teil des TRACER-Ökosystems diese Herausforderungen an. Es wird Animationsgeneratoren (wie KI-gestützte neuronale Netzwerke, welche auf Motion-Capturing-Datenbanken trainiert sind, video-basiertes, kostengünstiges Motion Capturing und viele weitere) mit DCC-Anwendungen, On-Set-Tools wie VPET oder Renderern im Allgemeinen verbinden. Es wird funktional unabhängig von der empfangenden Anwendung sein und eine intuitive Benutzeroberfläche mit einem Fokus auf Echtzeitszenarien bieten.
AnimHost wird Kompatibilitätsprobleme zwischen Generatoren und Nutzer*innen angehen, indem es eine definierte API und Datenstruktur für das Streaming menschlicher Animationen in beliebige Receiver bietet. Generatoren werden in Form von Plugins in AnimHost integriert. Um die Animationspipeline innerhalb von AnimHost einzurichten, wird ein einfacher Node-Graph-Editor als Benutzeroberfläche verwendet. Generatoren werden mit dem Streaming-Node verbunden, während erforderliche Transformationen oder gegebenenfalls eine Neuausrichtung in der Mitte hinzugefügt werden können.
AnimHost funktioniert nicht nur in eine Richtung. Es kann nicht nur automatisch generierte oder erfasste Animationen gleichzeitig an mehrere Geräte über den DataHub streamen, sondern auch Benutzereingaben wie spielähnliche Charaktersteuerung oder das Festlegen von Zielpositionen für Charakterbewegungen erfassen. Solche Benutzereingaben werden über dem VPET-Tablet-Tool möglich sein, welches ebenfalls die gestreamten Animationen empfangen kann. Darüber hinaus ist geplant, auch eine abstrahierte Darstellung der Szene bereitzustellen, die eine automatisierte Vermeidung von Hindernissen oder Interaktionen ermöglicht. Dadurch können Animationen automatisch generiert werden, was eine interaktive Regie sowohl für Laien als auch für Fachleute erlaubt.
Die Entwicklung wird engine-unabhängig sein, eine hochgradige Interaktion mit einem Charakter in Echtzeit ermöglichen und an jede zukünftige DCC-Anwendung adaptierbar sein.
Im Rahmen des EU-geförderten Projekts EMIL, genauer des Leuchtturmprojekts FATE OF THE MINOTAUR, nutzt die Filmakademie Baden-Württemberg das TRACER-Framework für eine Beispiel-Implementierung, welche zeigt, wie TRACER zur Erstellung einer location-based Experience eingesetzt werden kann.
Auf Basis einer Unity-Implementierung und eines TRACER-Version vom 14. September 2023 demonstrieren wir im Tutorial „Location Based Experience Example“, wie TRACER in location-based Anwendungen verwendet werden kann. Da TRACER engine-unabhängig ist, kann dies als Vorlage für die Implementierung in anderen Engines oder DCC Tools genutzt werden.