Dienstag, 29. Mai 2012

3D Support

Sony 3D Logo
Unity true 3D "SideBySide" Demo
Heute wurde die 3D Schnittstelle für unser Game fertiggestellt. Da die Sony HMZ-T1 Videobrille für jedes Auge einen eigenen OLED Screen besitzt, kann damit echtes 3D dargestellt werden und zwar ohne, dass dabei mittels Shutter oder Polarisationstechnik, das Bild automatisch dunkler wird. Von dem her war es von Beginn an ein Feature, das wir unbedingt in unser Projekt einbinden wollten. Die Grundtechnik ist schnell erkärt: anstelle von 1er Kamera werden nun 2 Kameras (eine für jedes Auge) gleichzeitig gerendert und beide Bilder nebeneinander ausgegeben. Die Brille kann durch Unterstütztes "SidebySide" Verfahren die 2 separaten Bilder voneinander trennen und für jedes einzelne Auge richtig und in echtem 3D wiedergeben. Today we finished the 3D interface for our game. Due to the reason that the Sony HMZ-T1 offers for each eye a single OLED screen, it is capable to show true 3D without the disadvantage of darker images while using a system with shutter or polarized 3D technique. From the begin on it was a must have feature for us and the technique behind is simple instead of 1 camera, our engine is now rendering 2 cameras (1 for each eye) at the same time. The Head mounted display is able to cut of the 2 side by side pictures, so that every eye sees the right picture.

Donnerstag, 24. Mai 2012

Letzte Hardware eingetroffen

Last Hardware for Game
Free IMU Headtracking Sensor
Heute ist auch die zweite Videobrille vom Typ Sony HMZ-T1. eingetroffen, vielen Dank an dieser Stelle an Sony für dieses Sponsoring. Und um den "Look and Feel" Gehalt unseres Virtual Reality Games zu erhöhen, haben wir uns dazu entschlossen, dem Spieler die Möglichkeit zu geben mit einem virtuellen Armbrust Ersatz das Spiel zu bestreiten. Hierzu kommt das von Sony produzierte Sharp Shooter Zubehör der PS3 zum Einsatz, das ebenfalls heute eingetroffen ist. Wir erhoffen uns dadurch, den Spieler noch tiefer in unsere virtuelle Realität zu versetzen und durch das Anbringen eines PS3 Navigation Controllers, stehen uns nun auch eine Vielzahl an Buttons und Analogsticks zur Verfügung, die wir für unser Game nutzen können. Zum Abschluss ist noch zu erwähnen, dass die Head Tracking Sensoren nun perfekt in unser Game eingebunden sind und jegliche Kopfdrehungen nahezu perfekt und 1:1 in unser Game übertragen werden. Mit dem jetzigen Softwarecode ist das Headtracking nicht nur sehr schnell, da der Sensor schon alle 20ms abegtastet werden kann, er ist jetzt zudem auch noch extrem genau und erkennt auch minimale Rotationsbewegungen runter bis zu 0.1 Grad. Today the second Head Mounted Display from Sony the HMZ-T1. arrived. At this point thanks to Sony for this sponsorship again. To raise the "look and feel" amount of our "Virtual Reality Game" we decided to give the player the opportunity, to play our game with a real crossbow. Here comes the Sharp Shooter accessories for PS3 to action, that also arrived today and we are very confident that this will raise the fun factor a lot and brings the player a lot more deeper into our virtual reality game. With the inserted PS Move controlles, we have a bunch of buttons and analog sticks available to implement into our game. At last we have to mention that our Headtracking feature is now finally working perfect in our Unity engine. With the current software code it is not only fast with an very short sensor update time of about 20ms, it is now also extrem accurate, with an rotion recognition below to nearly 0,1°.

Sonntag, 20. Mai 2012

Character Design

Enemie version 1
Enemie version 2
Anbei ein paar Fotos von InGame Gegnern in zwei verschiedenen Versionen, mit aktuellem Stand was das Character Design der Gegner anbelangt.
Attached some pictures of ingame enemies in 2 different versions. This is not the final design but comes pretty close to it.

Montag, 14. Mai 2012

PS3 Sponsoring

Playstation Sponsoship
Heute bekamen wir von Playstation eine zweite PS3, als Leihgabe auf Zeit gesponsert. Wir erhoffen uns dadurch noch schneller die Entwicklung voranzutreiben und im Gegensatz zu unserer eigenen, ist diese bereits ein Slim Model, was sich nicht nur in der Größe bemerkbar macht, sondern auch mit einem fast lautlosen Lüftergeräusch im Betriebsmodus. Als erstes wurde sofort das Development Kit Move.Me App installiert und natürlich haben wir auch ein paar Move Demos installiert, um ein paar Move Steuerungen aus erster Hand anzutesten und natürlich gute Ideen in unser eigenes Game einzubauen. Zum Abschluss nochmals vielen Dank an Sony und Playstation für diese Leihgabe!
Today our second PS3 arrived, sponsored by Playstation for a limited amount of time. It will help us to speed up the developing process of our game. In contrast to our own PS3 this is already the slim version, which is of course a lot smaller and very quiet as well. Firstly we installed at the Move.Me App App and of course some Move demos from the PSN Store, to get some Move experience at first hand and maybe to implement a good idea into our own game. At last thanks to Sony and Playstation for this great gratuitous loan.

Montag, 7. Mai 2012

PS Move Implementierung

Move.Me App im PSN
Heutiges Ziel war es, die Daten des Playstation Move Controllers in unsere Game Engine zu bekommen. Dazu brauchten wir zuerst mal die Move.Me App Store, für unsere PS3. Die erste Hürde war, dass dieses App über keinen Europäischen Playstation Network Store zu bekommen war und wir uns dafür einen US-Account anlegen mussten. Obwohl die App für Studenten gratis ist, so braucht man hierfür jedoch eine ".edu" Email Adresse, die wir natürlich nicht haben und von dem her mussten wir eine 99.99$ Developmentgebühr für die notwendige Move.Me App entrichten. Aber nachdem diese Hürden überwunden waren, ging es ziemlich flott voran. Die Move.Me App beinhaltet schon eine kleine Augmented Reality Demo (siehe Bild), in der auf die Spitze des Move Controllers ein mittelalterliches Schwert projiziert wird. Die Präzision und Schnelligkeit, mit dem das Schwert reagiert, ist wirklich erstaunlich. Von dem her, selbst wenn wir im Nachhinein die Kosten für das App nicht erstattet bekommen, so muss ich sagen, dass diese App wirklich jeden einzelnen Cent für unser Projekt wert ist, denn eine kurze Demo in Unity zeigt schon mehr als deutlich, welche Möglichkeiten uns nun damit offenstehen. Von nun an, steht uns nicht nur ein absolutes Positionierungssystem zur Verfügung, sondern wir können damit auch alle Buttons des Controllers auslesen und weiterverarbeiten. Zusätzlich kann noch die Farbe der Leuchtkugel auf dem Move Controller und die Rumble Funktion gesteuert werden, was mit Sicherheit noch mehr kreativen Freiraum für unser Projekt zulässt. Wir werden in kürze dazu ein Video online stellen, in dem wir einige Steuerungsdemos im aktuellen Entwicklungsstand herzeigen.
Todays goal was to stream the Playstation Move input into Unity. To do this we needed the Move.Me App from the PS store for our PS3. The first problem was that the app isn't provided by any european Playstation network store so we had to create an US-account. Although the app is free for students, we would have needed an ".edu" email account, which we of course don't have, so we had to purchase the app for a 99.99$ development fee. After we solved all the problems, we made real good progress. The app already contains a small augmented reality demo (see image "Augmented Reality Demo"). This program displays a medieval sword on the top of the Move controller. The precision and reactionspeed of the sword program is astounding. Even if we don't get money back for the purchase, the app is worth every penny. This short demo already shows the many possible ways to work with the Move controller. We now have a complete positioning system to work with and can also use every button on the controller or even it's rumble mode. We will release a short video in the next few days, that shows our current development status.

Unity Demo
Augmented Reality Demo

Samstag, 5. Mai 2012

Playstation Move Idee

PS Move Starter Set
Da wir unser ursprüngliches Konzept, ein Hovercraft Game, verworfen haben und somit auch kein Lenkrad mehr als Eingabegerät verwenden, sind wir nach mehreren Überlegungen zu dem Entschluss gekommen, die ebenfalls von Sony produzierten Playstation Move Controller, in unser Game einzubauen. Zum einen, weil es sich mit Motioncontrollern weitaus intuitiver steuern lässt, als mit Keyboard und Maus und zum anderen, da man die benötigten Tasten auf einer Tastatur sehr schnell durcheinander bringt, weil durch die Videobrille kein direkter Blick auf die Tastatur möglich ist. Eine weitere Alternative wäre eine Variante von Razer, mit ihren Hydra Controllern gewesen. Da es die jedoch nur in einer Kabelversion gibt und unser Hauptsponsor natürlich selbige auch im Angebot hat, ist es selbstverständlich, dass wir die PS Move Variante vorziehen. Noch dazu bietet Sony ein offizielles SDK Move.Me hierfür an und auch eine sehr gute Dokumentation, die die Einbindung in unsere Unity Game Engine weitaus beschleunigen sollte. Eine Playstation 3 fungiert dabei als Server (siehe Bild 'Move.Me Prinzip'), der die Daten des Move Controllers und der Playstation Eye Kamera, über UDP Protokoll an unseren PC schickt und über TCP auch Befehle empfangen kann. Dieses SDK ist übrigens das gleiche, was auch alle großen Entwicklerstudios (Konami - Resident Evil 5Guerrilla Games - Killzone 3, ...) für die Implementierung, in ihre Move unterstützen Games, benutzt. Da wir leider keine eigene PS3 haben und die Projektwoche schon vor der Tür steht, haben wir uns kurzerhand eine halb defekte aber noch funktionierende PS3 ausgeborgt und 1 Playstation Move Starter Set gekauft, damit hier keine Zeit vergeudet wird und wir sofort loslegen können. Since we discarded our Hovercraft Game concept, we don't need a steerling wheel no more, so we decided to use Sony Playstation Move Controllers for our game. The most important reason was because it gives us more intuitive opportunities to controll the game with motioncontrollers than using keyboard and mouse, also wearing the HMD makes it nearly impossible to get a good direct look on your keyboard which makes you lose your orientation regarding the keys very easily. An alternative would be the Razer Hydra controller set. Unfortunately this system isn't wireless and since our main sponsor Sony offers a similar product, we do of course prefer the PS Move version. Also Sony offers an official SDK Move.Me for this with a very good documentation which makes the implementation into Unity quite easier for us. A Playstation 3 acts as a server (see image "Move.Me concept") that sends the data of the Move controller and the Playstation Eye camera as UDP protocoll to the PC and can receive input as TCP. This SDK is the same that is used by big development studios (Konami - Resident Evil 5Guerrilla Games - Killzone 3, ...) to implement the Move controllers in their games. Since we don't own a PS3 and our project week starts very soon, we've borrowed a slightly defective one and also bought 1 Playstation Move starter kit so we can start right away.
Playstation 3
Move.Me Prinzip

Dienstag, 1. Mai 2012

Sensor Implementierung

Sensor an HMZ-T1
Kabellänge ca. 3.5m
Gestern wurde eine provisorische Lösung für das anbringen des Head Tracking Sensors entwickelt. Zuerst einmal wurde der Sensor neu verlötet (aktuell Version 3). Die 90° Stiftleisten wurden entfernt und das zu dicke Netzwerkkabel durch ein 4 poliges Flachbandkabel ersetzt. Die Kabellänge vom Sensor zum Arduino UNO Board, der die Sensordaten an den PC weiterleitet, wurde gleich lang wie die Verbindung zwischen der HMZ-T1 Brille und der HDMI Prozessor Box gehalten (ca. 3,5m). Dadurch ergibt sich ein größerer Bewegungsraum, indem man sich leichter ohne Begrenzungen der Kabellänge bewegen kann. Zuletzt wurde der Sensor unterhalb der Brille befestigt und das Video und Sensor Kabel zu einem einzigen vereint. Der angebrachte Sensor samt Kabel stört in keiner Weise, die Funktion oder die Handhabung der Brille und ist zudem auch optisch nicht zu auffällig. Erste Tests in Kombination mit der Unity Game Engine, waren schon sehr vielversprechend und eine simple Kamerarotation um die X, Y und Z Achse war schon gut möglich. Einige Kinderkrankheiten müssen noch ausgebessert werden, aber ansonsten funktioniert das schon relativ gut und wir werden auch in den nächsten Tagen ein Video dazu veröffentlichen. Der nächste Schritt wird die Implementierung von Playstation Move Controllern in Unity sein. Yesterday we found a provisional way to attach the headtracking sensor to our head mounted display. The first step was to solder the sensor to a new wire to connect it to the board. It's now the 3rd version we created, now with a new ribbon cable and without the 90° pin strip. The cable length from the sensor to the Arduino UNO board, which sends the data to the PC is now as long as the cable of the HMD to it's processor box (about 3,5m). This way it's easier to move around without beeing limited by the cable length. The second step was to attach the sensor to the HMD and merge the two cables. Besides the better movability, it also looks quite better than before. Our first tests to use the sensor and the HMD with the Unity Game Engine were very promising and a simple camera rotation around the x, y and z axis was possible. Some trivia problems still have to be solved but in generel everything works fine. We will release a short video, showing the implementation in the Unity Game Engine very soon. The next step will be to implement a Playstation Move controller in Unity.
Sensor (Version 2)
Sensor (Version 3)