Fading Limits

Aus toolbox_interaktion
Wechseln zu: Navigation, Suche

Ziel

Navigation in einem mittels Grafiksoftware erstellten virtuellen Raum. Durch Gestensteuerung kann der Benutzer sich frei in diesem bewegen.

Benutzte Hard-/Software (unter Mac OSX)

Hardware:

* Microsoft Kinect
* Beamer

Software:

* KinectA
* Blender
* MadMapper
* VDMX5

Realisierung

KinectA


Um mit der Kinect arbeiten zu können, wird als erstes das Programm KinectA installiert. Die Gestenerkennung könnte auch mit einer handelsüblichen Webcam realisiert werden. Wir haben uns dennoch für die Verwendung der Kinect entschieden, da wir hierdurch zusätzlich die Möglichkeit haben auf Tiefeninformationen zuzugreifen. Diese werden benötigt, um den Bereich der Interaktion genauer zu definieren. Wichtig bei der Konfiguration der Software ist die korrekte Einstellung des Ports und der IP-Adresse, an welche die OSC-Nachrichten gesendet werden. Man geht hierfür in den Programmordner von KinectA und passt die Datei „oscConfig.xml“ dementsprechend an. Es empfiehlt sich, nachdem man diverse Einstellungen vorgenommen hat, diese unter „Configuration – Save to...“ zu speichern, um bei einem Neustart schnell und einfach die Einstellungen wieder aufrufen zu können.























Als nächstes wurde ein einfacher virtueller Raum in Blender erschaffen und in dessen Mitte eine Kamera positioniert.


Blenderraum



PythonOSC

Da wir die Kamera ansteuern wollen, müssen wir dieser sowohl einen Sensor als auch Controller zuweisen. Wir haben uns für einen Always-Sensor entschieden, da das Skript in jedem Frame erneut aufgerufen werden soll. Um die OSC Daten in Blender empfangen zu können, benötigt man das Python Skript „OSC.py“. Diese wird in den Projektordner kopiert, in welchem sich auch die betreffende Blender-Datei befindet.

Für den Controller muss nun ein Python-Skript geschrieben werden, welches die Informationen der empfangenen OSC-Nachricht entsprechend analysiert und verarbeitet. Die in der Nachricht enthaltenen Koordinaten der Hand sollen auf die der Kamera übertragen werden.

Ein Teilziel des Projektes wurde damit abgeschlossen. Es ist nun möglich, die Rotation der Kamera per Handbewegung zu steuern.

























Als nächstes wird unser Bild mit einem Beamer in eine Raumecke projiziert und unter Verwendung eines 3D-Projection-Mapping Programms die gewünschte optische Täuschung erzeugt. Um die Projektion mittels geeigneter Software zu realisieren, verwenden wir „MadMapper“. Mit dieser Software kann man relativ einfach ein Bild, ein Video oder andere Inhalte an die Wand projizieren.


MaddMapper1


Für die Verzerrung des Outputs bietet MadMapper mit „Mash Warping“ eine komfortable Möglichkeit, schnell und effektiv die Projektion auf die Gegebenheiten der bestrahlten Fläche anzupassen.


Madmapper2


MadMapper selbst kann keine aktiven Programmfenster wie Blender als Output wiedergeben. Um dieses Problem zu umgehen haben wir mit der Software „VDMX5“ das aktive Programmfenster von Blender live aufgenommen und als Syphon-Applikation ausgegeben.


VDMX5


Datein:

OSC-Datei Blenderraum