GDC: Programmiertipps für Kinect-Titel von morgen

Noch im Frühjahr will Microsoft ein kostenloses Kinect-SDK für Windows und Xbox 360 verteilen. Auf Entwickler wartet ein hartes Stück Arbeit, wenn sie eine robuste Bewegungserkennung in ihre Software implementieren wollen.

In Pocket speichern vorlesen Druckansicht 9 Kommentare lesen
Lesezeit: 2 Min.

Microsoft will noch im Frühjahr ein Software Development Kit (SDK) für seine 3D-Kamera Kinect veröffentlichen. Das SDK erlaubt nicht nur die Ansteuerung der Kamera von einem PC aus, sondern bringt umfangreiche Programmierhilfen und Tools zur Bewegungs-, Gesten- und Spracherkennung mit, die weit über die bisher verfügbaren Open-Source-Treiber hinaus gehen. Auf der Game Developers Conference ging Microsoft auf die wichtigsten Punkte bei der Implementierung ein.

Das Skelettsystem der Kinect-Software erkennt 20 Gelenkpunkte der Spieler. Software-Entwickler können die räumlichen Koordinaten der Punkte direkt zur Bewegungs- und Gestenerkennung nutzen.

(Bild: Microsoft)

Das Grundproblem der Bewegungserkennung mit Kinect besteht darin, dass es im Unterschied zu einem simplen Knopfdruck keine absolute Gewissheit gibt, ob eine Funktion ausgelöst werden soll. Es können vielmehr nur Wahrscheinlichkeiten berechnet werden, ob ein Spieler in einer Situation springt, sich bückt, mit der Hand winkt oder boxt. So liegt es an der jeweiligen Software, ab welchem Grenzwert eine bestimmte Bewegung als solche erkannt wird. Dazu reicht es nicht aus, dass der Entwickler die Bewegung nur an sich selbst ausprobiert, sondern er muss Bewegungsdaten von möglichst unterschiedlichen Personen (alt, jung, dünn, dick, groß, klein) in unterschiedlichen Umgebungen sammeln.

Dieser aufwendige Prozess lässt sich laut Microsoft mit lernfähigen Algorithmen vereinfachen, die Parameter während des Spiels auf die jeweils zu verfolgenden Personen anpassen. Beispielcode soll dem SDK beiliegen, der auch auf Filter und Interpolationstechniken eingeht, die eine weichere Bewegungserkennung ermöglichen. Problematisch seien unter anderem die Eingabelatenzen. Programmierer sollten laut Microsoft darauf achtgeben, dass die Eingabeverzögerungen 120 ms nicht überschreiten, wenn Bewegungen des Spielers 1:1 in die Spielewelt – beispielsweise zur Steuerung eines Menüs –] übernommen werden sollen. Es gebe jedoch auch andere Spielarten, die Verzögerungen von 200 ms und mehr verkrafteten, ohne dass sie den Spielern negativ auffallen.

Ebenso arbeitet Microsoft an einer Verbesserung der Spracherkennung. Neben den bereits unterstützten Sprachen Englisch, Spanisch und Japanisch sollen in einer zweiten Stufe Deutsch, Französisch und Italienisch hinzukommen. Das SDK enthält eine Vorabversion der zusätzlichen Sprachmodule. Für den nicht-kommerziellen Einsatz ist das SDK kostenlos erhältlich. Microsoft will dadurch den Programmier-Nachwuchs fördern und die Entwicklung neuer Ansätze zur Bewegungssteuerung an Universitäten und Forschungseinrichtungen unterstützen. Neben der Schulung in San Francisco seien weitere Termine für Spielentwickler in Tokyo und London geplant. (hag)