Leitung
Prof. Dr. Wolfgang Broll
Telefon: +49 2241 14-2715
wolfgang.broll@fit.fraunhofer.de
MORGAN - Ein verteiltes multi-user Framework für VR/AR Anwendungen
Das Morgan AR / VR Framework ermöglicht die Entwicklung und den Einsatz von verteilten multi-modalen Mehrbenutzer AR / VR Applikationen, die speziell auf die Anforderungen des jeweiligen Anwendungsszenarios angepasst werden können. Es bietet sowohl Anfängern als auch Experten eine erhebliche Beschleunigung bei der Entwicklung von AR und VR Applikationen. Es wurde zur vollen Unterstützung von heterogenen verteilten Umgebungen und individuellen Eingabe- und Ausgabegeräten entwickelt.
-
- Head Mounted Display
Morgan dient als Basis für ihre AR oder VR Anwendung, egal ob Sie eine High-End Workstation mit mehreren Bildschirmen einsetzen wollen, mobile Computer wie Notebooks, Tablet PCs oder Ultra Mobile PC (UMPCs), bis hin zu Handheld Geräten wie PDAs oder Smartphones. Zudem erlaubt es die einfache Verwendung und Auswechslung von einer großen Anzahl von Eingabe- und Ausgabegeräten, einschließlich Maus und Tastatur sowie 3-DOF und 6-DOF Objekt-Tracking- und Navigationssystemen, bis hin zur Spracherkennung und Sprachsynthese, Wind- und Temperatursensoren, Webkameras und stationäre, tragbare und Head-Worn Displays. Dadurch können multi-modale Benutzerschnittstellen schnell entwickelt und getestet werden und bei wechselnder Hardwarekonfiguration können einzelne Geräte einfach ausgetauscht werden.
Zusätzlich bietet Morgan eine verteilte Render Engine mit automatischer Szenengraph-Synchronisation und einem stereoskopischen AR / VR Viewer.
Render Engine
Die speziell für Morgan entwickelte Render Engine erlaubt die Echtzeitdarstellung von komplexen 3D Szenen und bietet neben den Standardfunktionen wie Kollisionserkennung, Picking und Echtzeit CSG (Constructive Solid Geometry) zusätzlich Eigenschaften, die sie von anderen abhebt: die Trennung von interner Szenenrepräsentation und 3D-grafikformatspezifischen Daten.
Der interne Szenengraph ist speziell für das effiziente Darstellen von Szenen entworfen. Um dies zu gewährleisten, speichert er nur Informationen, die für die Darstellung benötigt werden. Alle anderen Daten der 3D-Grafikformate, wie z.B. Interaktion und Semantik, werden in einem externen Szenengraphen abgelegt. Eine effiziente Abbildung erlaubt den einfachen Zugriff auf die grafischen Informationen. Diese Daten können später wieder problemlos in das ursprüngliche Format zurück abgebildet werden, ohne dass Interaktion und Semantik verloren geht.
Folgende 3D Beschreibungssprachen unterstützen wir bereits: VRML’97, X3D und Cal3D. Die Unterstützung von COLLADA ist derzeit in Arbeit. Alle gängigen Bildformate und Videoformate sowie Webcams und Videostreams können beliebig als Texturen verwendet werden und Soundquellen können in der 3D Umgebung platziert werden für die Erzeugung von Raumklang. Die Morgan Render Engine kann sowohl OpenGL als auch Direct3D zur Grafikausgabe verwenden.
DEVAL - Eine Geräteabstraktionshierarchie
Mit Hilfe der Abstraktionshierarchie für Eingabe- und Ausgabegeräte DEVAL (Device Abstraction Layer) lassen sich Applikationen vor oder während der Laufzeit an wechselnde Umgebungen anpassen. Dadurch ist eine Applikation nicht mehr von bestimmten Geräten abhängig, sondern kann sich nachträglich an ändernde Hardware oder Umgebungen anpassen, z.B. durch das Austauschen von Tracking-Geräten oder dem Ersetzen von Spracheingabe durch Tastenkommandos. Die Liste der unterstützten Eingabe- und Ausgabegeräte umfasst bereits Kamera- und sensorbasierte Tracking-Systeme, Spracheingabe und -ausgabe, GPS Empfänger sowie diverse 3D-Eingabegeräte und wird fortlaufend erweitert.
Audio- und Videostreaming
Morgan ist nicht nur in der Lage, beliebige Bild-, Video und Audiodaten von verschiedensten Quellen zu verarbeiten, sondern ist zusätzlich auch in der Lage das erzeugte Bild bzw. ein augmentiertes Videobild und die Audioausgabe als Videostream über das Internet als RTP Stream zu versenden. Dadurch können außenstehende Betrachter mit verfolgen, was der Benutzer wahrnimmt.
Marvin - Der AR / VR Viewer
Der AR / VR Viewer Marvin, entwickelt auf Basis unseres Frameworks, erlaubt dem Benutzer Fähigkeiten von Morgan individuell zu erleben. Er dient sowohl als Ausgabe für die Render Engine als auch als Schaltstelle für die verwendeten Ein- und Ausgabegeräte. Neben Keyboard und Maus Navigation, Stereoeinstellungen, Videohintergrund und Headtracking, Interaktions- und Visualisierungseigenschaften können einfach konfiguriert werden. Marvin profitiert von dem komponentenbasierten Aufbau von Morgan, da sich alle Komponenten und sogar externe Applikationen über einen Plugin-Mechanismus hinzu laden lassen. Entwickler können sogar ihre eigenen Plugins entwickeln, um die Funktionalität von Marvin zu erweitern.
Lizenzierung
Forscher und Entwickler von AR / VR Projekten können das Morgan AR / VR Framework zur Evaluation, Entwicklung, Demonstration und Auslieferung lizenzieren. Bitte kontaktieren Sie uns für weitere Informationen. Akademische Einrichtungen und Universitäten haben u.U. die Möglichkeit, eine kostenlose Lizenz zu erhalten.
