Bisher habe ich nur über Multi-Touch fähige Computer als Vertreter für Geräte mit NUI gesprochen, aber nicht nur Smartphones und Tablet-Computer gehören zu dieser Kategorie.
Neben der Möglichkeit eingaben per Berührung der Bedienoberfläche zu tätigen gibt es darüber hinaus auch Ansätze für die Steuerung mittels Körperbewegung. So gehört zum Beispiel die Kinect für Xbox, die durch integrierte Kameras Körperbewegungen und Gesten erkennen kann, zu dieser Kategorie von Eingabegeräten. Um den Spieler genau erkennen zu können wird dafür bei der Kinect neben einer Farbkamera auch eine Tiefensensor-Kamera verwendet, wodurch die Person auch im dreidimensionalen Raum agieren kann.
Es ist aber auch möglich mittels normaler Kamera die Bewegungen einer Person zu erkennen. Diese Technik setzte zum Beispiel das EyeToy für die Playstation 2 ein. Das aktuell aufgenommene Webcambild wird bei dieser Technik mit dem vorher aufgenommenen Bild verglichen. Die Differenzen zwischen den Bildern spiegeln somit die Bewegung vor der Webcam wieder. Durch eine hohe Rate von dreißig Bildern pro Sekunde (FPS) kann somit auch eine flüssige und genaue Erkennung der Bewegungen gewährleistet werden.
Diese simple Methode von Bewegungserkennung kann von jeder Webcam am heimischen PC verwendet werden, um eine simple Steuerung per Körperbewegung zu realisieren.
In folgendem Beispiel-Spiel wird diese Methode zur Bewegungserkennung angewandt. Der Spieler hat dabei die simple Aufgabe die auf dem Bildschirm dargestellten, herunterfallenden Diamanten mit der Hand zu fangen. Die Unterschiede zwischen dem vorherigen und aktuellen Bild, welche in grün dargestellt werden, werden dabei verwendet um die Berührung des virtuellen Objektes und der Hand des Spielers zu ermitteln.
Da es sich bei dieser Technik um eine rein optische Methode handelt, die darüber hinaus von der Qualität des jeweiligen Kamerabildes sowie der FPS-Rate abhängig ist, ist die Bewegungserkennung nur in (gut) beleuchteten Räumen optimal.
Eine andere Form der Steuerung kann über Accelerometer erfolgen. Accelerometer sind Sensoren die Beschleunigungen und Bewegungen messen und verarbeiten, um die Lage eines Gerätes im dreidimensionalen Raum zu bestimmen.
Der Beschleunigungssensor wandelt dazu die bei einer Beschleunigung verursachten Druckschwankungen im Sensor in elektrische Signale um. Durch das stetige Messen der Bewegungen kann zu jeder Zeit ermittelt werden in welcher Position sich das Gerät befindet.
Neuere Sensoren geben neben den Beschleunigungswerten darüber hinaus auch noch ihre Lage in Bezug zur Gravitation aus. Dadurch wird noch genauer beschrieben welche Lage das Gerät gerade besitzt.
Ein Beschleunigungssensor reagiert durch seine Bauweise jedoch nur in einer Dimension mit einer maximalen Empfindlichkeit, weshalb pro zu messender Ache ein Sensor benötigt wird.
Diese Form der Positionsermittlung wird heutzutage in fast jedem Smartphone und Tablet-Computer eingesetzt um den Bildschirm auszurichten. Da diese neuartigen Geräte vom Anwender in jede erdenkliche Richtung gedreht werden können ist es wichtig zu erkennen wann das Gerät hochkant (portrait) oder horizontal (landscape) gedreht ist, damit der Benutzer zu jeder Zeit den Bildschirminhalt optimal dargestellt bekommt.
Aber auch in der Spieleindustrie wird diese Technik zur Steuerung eingesetzt. So ist in dem Spielecontroller der Nintendo Wii ebenfalls ein Accelerometer integriert, damit der Spieler, zum Beispiel bei Autorennspielen, nur noch den Controller in die entsprechende Richtung neigen muss um seine Spielfigur zu steuern.
Auch Spracherkennung und -steuerung, wie Siri auf dem iPhone 4S, zählen zu den Vertreten dieser neuartigen Eingabemethoden von natürlichen Benutzeroberflächen, aber stecken bisher noch in den Kinderschuhen, weshalb ich in diesen Beitrag nicht auf sie eingehen werde.
Kommende Blogeinträge
Making The Game – Teil 5: Multi-Touch Frameworks (Adobe Flash/Air)
Making The Game – Teil 6: Multi-Touch-Geräte und ihre Leistungsgrenzen
Making The Game – Teil 7: Interessante Forschungen im Bereich Multi-Touch
…