VR∙Nerds

Do-It-Yourself Treadmill für ca. 50 € – DIY VR-Laufband Teil 1

Viel Spaß!

Vorwort

Als Hobbyprogrammierer, der immer großes Interesse an VR hatte, war ich begeistert, als ich  vrnerds.de entdeckte. Ich konnte auf dem neusten Stand bleiben, ohne selbst das Internet durchforsten zu müssen. Besonders der Cyberith Virtulizer weckte mein Interesse, denn in den Promovideos wurden Skyrim und Kollegen sehr lebensecht präsentiert. Eine Sache wunderte mich: Es wird eine Treadmill angeboten, aber wie werden Bewegungen erfasst?

Nachdem ich mich sowohl mit dem Virtulizer als auch mit dem Video weiter auseinander gesetzt hatte, begriff ich, dass es zwei Paar Schuhe sind. Es gibt das Laufband und das Motion Capture System. Aus dieser doch simplen Erkenntnis entstand mein Projekt. Leider ist die Treadmill frühestens in einem Jahr erhältlich und nicht gerade billig. Ebenso gibt es auch kein sehr gutes MotionCapture-System zum Taschengeldpreis. Was lässt sich also für ca. 50€ alles selbst machen?

Bevor diese Frage aus meiner Sicht beantwortet wird, stelle ich mich kurz vor: Ich bin Lehramtsstudent der Fächer Mathematik und Physik und programmiere nun seit knapp sechs Jahren. Angefangen habe ich mit Microsoft XNA C#. Damit habe ich einen RPG-Maker programmiert, womit Zelda-ähnliche Actionadventures erstellt werden können. Dieses Projekt fraß etwas mehr als 2 Jahre meines Lebens, bis es vollendet war. Parallel dazu programmierte ich erste Handyspiele, z.B. Tetrisclone, RPGs usw. zum Eigengebrauch. Als mir 2D-Spiele nicht mehr ausreichten, programmierte ich mittels XNA, Gamestudio, Unity und dem UDK einige 3D-Spiele (Papermario-Clon, weitere Spiele mit projektiver Kollisionsüberprüfung) wiederum zum Eigengebrauch. Nebenbei arbeitete ich mich in Android und OpenGL ein, um auch 3D-Smartphonespiele erstellen zu können. Als Resultat beherrsche ich die Programmiersprachen C# (incl. XNA-, Unity-Spezifikationen), Java, JavaME, (OpenGL), JavaScript, Python und einige mehr. Darüber hinaus programmiere ich auch heute mit Unity und Androids OpenGL Computer- und Smartphonespiele und Anwendungen.

An dieser Stelle möchte ich erneut betonen, dass für den Bau des hier vorgestellten Projekts keine Programmierkenntnisse notwendig sind. Ich werde alles von der Pike auf erklären und die auftauchenden Skripte sind sehr simpel.

Das Projekt

Ich habe ein einfaches (mechanisches) Laufband mit Hilfe einer Maus zu einer primitiven Treadmill umgebaut. Bei Ebay-Kleinanzeigen gibt es schon welche für ca. 20€. Eine WiiMote wird mittels Bluetooth-Adapter zu einem hinreichenden MotionCapture-Erlebnis gemacht. Das Projekt stellt eine kostengünstige, minderqualitative Alternative zum “Holedeck Lite” dar. Letzteres ist professionell, ermöglicht Bewegungen in jede Richtung und genaue Bewegungserfassung. Das hier vorgestellte Projekt erlaubt die Bewegung in eine Richtung und eine simple Bewegungserfassung. Das Drehen des Avatars im Spiel wird ebenfalls über die WiiMote ermöglicht.

Der zentrale Vorteil des Projektes ist, dass es

a) direkt und nicht erst in einem Jahr verfügbar ist

b) statt >1.500€ (Virtualizer + Kinect2/Stem) nur ca. 50 € kostet. Richtig, 50 € (wenn ihr schon eine WiiMote besitzt, dann ist es noch weniger).

Folglich soll das Projekt nicht das „Holodeck Lite“ ersetzen, sondern lediglich eine kostengünstige Überbrückung der Wartezeit darstellen.

Genug der Worte, ein kleines Video:

Hier wurde Gothic 2 präsentiert. Das „Gehen“ sowie die Menünavigation erklären sich von selbst. Für alle nicht Eingeweihten: Gothic 2 unterstützt (anfänglich) zwei verschiedene Schwertangriffe, seitliche und vertikale Schläge. Diese werden ebenfalls durch die WiiMote unterschieden.

Funktionsweise

Möglich wird all das durch ein Programm namens GlovePie. Dadurch lassen sich Eingaben verschiedener Geräte (z.B. Maus oder WiiMote) Tastendrücken der Tastatur zuordnen. Im Folgenden wird lediglich ein Überblick über die Funktionsweise gegeben. Die anschließenden Blogs erklären dann die einzelnen Schritte genauer, ggf. mit Codebeispielen, Downloadlinks, usw. Habt ihr allerdings keine Lust auch nur einfachste Codezeilen zu schreiben, kein Problem: Ich werde alle fertigen Skripte mit Erklärungen als Download zur Verfügung stellen.

An dem Laufband wird eine Maus so positioniert, sodass sich das Mausscrollrad immer dreht, wenn man läuft. Mittels GlovePie wird dem „nach oben Scrollen“ die „W-Taste“ zugeordnet. Anschließend muss im Spiel eingestellt werden, dass man durch Drücken der „W-Taste“ nach vorne geht. Das war schon alles zum Laufband.

Alle Menünavigationen wie „Pfeiltaste nach oben“ o.ä. werden zugehörigen Tasten der WiiMote und dem Nunchuck zugeordnet. Links- und Rechtsbewegungen des Nunchucksticks werden der Drehung des Charakters zugeordnet, sodass man im Spiel in jede Richtung gehen kann. Übrig bleiben die Schläge usw., um eine möglichst hohe Immersion zu erzielen. Die zugehörige Umsetzung benötigt aber schon alleine einen Blog.

Oculus Rift

Natürlich stellt sich die Frage, ob man das hier vorgestellte Projekt mit der Oculus Rift kombinieren kann. Die Antwort ist „ja“. Gothic 2 selbst wird wahrscheinlich keinen Oculussupport erhalten. Dennoch werde ich, sobald ich im November mein Oculus DK2 erhalte, Gothic 3 und Bioshock in der Laufband-WiiMote-Oculus-Kombination vorstellen. Die zugehörigen Skripte stelle ich natürlich zum Download zur Verfügung.

Gewöhnungseffekt

Allen, die den Cyberith Virtualizer ausprobiert haben und ebenfalls groß gebaut sind, dürfte aufgefallen sein, dass es nicht so leicht funktioniert wie bei kleineren Kollegen. Als Bauer des Laufbandes fühlte sich das Ergebnis selbstredend natürlich an. Der Kameramann von vrnerds.de, welcher ebenfalls groß gebaut ist, brauchte einige Minuten um sich einzufinden. Wenn ihr euch also auf einem Laufband unsicher fühlt, keine Sorge! Es ist alles eine Frage der Übung.

Wenn ihr also auch gerne ein Stück Immersion zum selber Bauen möchtet, dafür wenig Geld ausgeben wollt und bereit seid, die kommenden Blogs zu lesen, schaut regelmäßig rein. Für alle Fragen, Anregungen und Kritik: thomas.2bappsolution@gmail.com

Weiter zu Teil 2…