PolyVR

  • Ansprechperson:

    Dr.-Ing. Victor Häfner

  • Projektgruppe:

    FG 3: Smart Immersive Environments

  • Starttermin:

    April. 2009 

"PolyVR" ist eine Virtual Reality Engine, die skalierbare und schnell generierbare VE-Systemlösungen unterstützt

PolyVR - Virtual Reality Authoring System

PolyVR ist ein Virtual-Reality-Autorensystem, das dem Benutzer ermöglicht, immersive und interaktive virtuelle Welten dynamisch zu erstellen. Dieses umfangreiche VR-Werkzeug wird in zahlreichen Projekten und Lehrveranstalgungen eingesetzt und dadurch ständig weiterentwickelt. Seit 2009 werden Ergebnisse aus Forschungs- und Industrieprojekten nachhaltig als Module integriert. Dadurch können Synergien aufgebaut werden und wesentlich komplexere Anwendungen implementiert werden. Dies ist die Grundlage, um an aktuellen Themen effizient forschen zu können.

Die Inhalte einer virtuellen Anwenung sind von der Hardware-Konfiguration abstrahiert, dies erlaubt es, Inhalte flexibel und dynamisch aufzusetzen, auch auf komplexen verteilten Visualisierungssystemen. Außerdem kann die Hardware-Konfiguration dynamisch während der Laufzeit angepasst werden. Somit können auch dynammische Umgebungen bedient werden, zum Beispiel mit mobilen Displays.

Anwendungen werden durch Python-Scripte für dynamische und interaktive Inhalte realisiert. Python-Bindings bieten Zugriff auf alle integrierten Funktionen von PolyVR. Dies ermöglicht eine schnelle und flexible Einbindung von externen Bibliotheken oder andere Ressourcen und ist eine sehr intuitive Sprache mit geringer Lernkurve.

Vorteile:

 

PolyVR Services and Applications

Dienstleistungen: 

IMI bietet folgende Dienstleistungen im Bezug auf Virtual Reality und PolyVR Software:

Haben Sie fragen? Hier geht es zu den Kontaktdaten!

 

 

Datenimport:

PolyVR bietet viele Datenschnittstellen für unterschiedlichste Formate für Numerik-, Netz-, Volumen- oder CAD-Daten. PolyVR verfügt über einen optimierten Importer für VRML-Dateien, die aus dem CAD-Tool SolidWorks exportiert wurden. 

3D-Modelle

glTF, COLLADA, 3DS, VRML 2.0/97, PLY, STL, OBJ, IFC, STEP

Animations over glTF

3D-Scans/Punktwolken  

E57, XYZ

Texturen/Bilder

JPG, PNG, TIFF

Vektorgrafik/2D-Layouts

SVG, DWG, DXF

Sound

MP3, WAVE

Sonstige

OWL, XML, HTML,  IES

 

Unterstützung von VR-Hardware: 

PolyVR unterstützt eine breite Palette an Hardware Systemen, sowohl immersive visualisierungssysteme als auch exotischere Interaktionsgeräte. Die gängigen VR-Ein- und Ausgabegeräte wie Trackingsysteme und Computer-Cluster für verteilte Visualisierung können dynamisch und schnell konfiguriert werden. Headtracking ermöglicht die ständige Anpassung der Nutzerperspektive und hat einen noch wesentlich größeren Einfluss auf die Tiefenwahrnehmung als die stereoskopischen Darstellungen. Die 3D-Anwendungen sind von den Hardware-Systemen entkoppelt, dies erlaubt einen flexiblen Einsatz der Applikation auf allen unterstützenden Hardware-Systemen. Die dadurch erreichte Skalierbarkeit von Lösungen erlaubt somit den Einsatz nicht nur in hoch immersiven VR-Umgebungen wie CAVEs oder Holospaces, sondern ebenso auf KMU-gerechten VR-Umgebungen, z. B. unter Einsatz von 3D-Fernsehern oder VR-Brille (HMDs). PolyVR unterstützt haptische Geräte (Fa. Haption), sowie neuartige Interaktionsgeräte wie die Leap Motion oder das MYO Armband. Eine mit dem Scripting Modul verknüpfte REST-Schnittstelle ermöglicht eine sehr leichte Anbindung von mobilen Endgeräten an die Applikationslogik.

 

Abbildung: Hardware konfiguration einer CAVE; Visualisierung und Simulation virtueller Fabrik

 

Entwicklungsumgebung: 

PolyVR als Entwicklungsumgebung bietet dem Nutzer eine einfache Benutzeroberfläche, auch für nicht VR-Experten. Interaktive 3D-Inhalte können an der laufenden Anwendung verwaltet, verändert und erweitert werden. Dies wird auch durch den Einsatz inder Lehre bestärkt und weiterentwickelt. Die in "PolyVR" integrierten umfangreichen Möglichkeiten Skripte zu erstellen, sind für Entwickler ein bequemes Werkzeug zur Implementierung komplexer Anwendungslogik. Das Phython Scripting ermöglicht die implementierung von Logik, Interaktion und Animaitonen in der VR Szene. Alle Features von PolyVR sind von Skripten zugreifbar wie Szenengraphenoperationen, das Importieren oder das Erstellen von Inhalte, Physik, Beleuchtung, Kameras und andere.

Interaktive Simulation:

PolyVR bietet einige Module um dynamisches bzw. simulatives Verhalten in die virtuelle Szene einzubringen. Zum einen gibt es eine klassische Physik-Engine (mit Bullet), die 3D-Kollisionserkennung, Simulation von Physik starrer Körper und Simulation von nicht-elastischer Physik mit Deformationen unterstützt.  Damit kann realistisches Verhalten von dynamischen Objekten in der virtuellen Umgebungen abgebildet werden. Weitere Module sind zum Beispiel die Mechanik Simulation mit der Zahräder, Achsen und Ketten simuliert werden können. 

Weitere Beispiele für Module: 

Eine schnelle und einfache Erstellung von grafische Oberflächen und Interaktion im VR bietet die Möglichkeit Webseiten in PolyVR zu hosten und diese als Texturen an dem 3D-Objekte zu rendern. Der Nutzer kann mit der Webseite interagieren, so wie im Browser gewohnt. Dies befähigt die VR-Entwickler mithilfe von HTML, CSS, WebGL schnell Menüs für VR zu realisieren.

Ein QR-Code Generator ist integriert und erlaubt die QR Code-Texturen überal in der virtuellen Welt zu plazieren. Dies ermöglicht eine sehr bequeme Lösung zur Encoden von URLs für die Nutzer, um sich einfach mit der Anwendung zu verbinden. Dies kann nützlich sein, wenn Smart Geräte für Steuerung der virtuelle Umgebung verwendet werden. 

Projekte und Kommunikation können verschlüsselt werden.

Module für Punktwolken, Panoramabildern und vieles mehr.

Modul für Geo Daten, tesseliertes Terrain mit Höhendaten, Generierung von Straßennetzten und Assets für virtuelle Welten. 

 

Source-Code:

PolyVR ist open-source unter GPLv3 Lizenz und kann vom GitHub heruntergeladen werden. 

 

Dokumentation: 

Im GitHub Wiki findet man Information über PolyVR Features, Installationshinweise und Dokumentation. Nach der Installation von PolyVR hat man Zugriff auf zahlreichen kleine Beispielsanwenungen (siehe Examples), die den Einsatz der meisten Features des Tools erklären.

 

Betriebsystem: 

PolyVR ist unter dem Linux Betriebsystem Ubuntu 14.04 und 16.04 getestet. Es wird an einem Windows-Portierung gearbeitet. Für mehr Informationen bitte nehmen Sie Kontakt mit uns auf.

 

Anwender: 

 

 

Anwendung in der Lehre:

 

 

Anwendung in Projekte am IMI: 

Abbildung: Ergebnisse des Projektes "SimViDekont", in der Mitte Visualisierung der FEM-Simulation.

 

Videos von zahlreichen Projekten können Sie in unserem IMI_KIT YouTube Channel sehen. 

Publikationen: