Thursday, August 30, 2012

Zombies!!

There were quite a few changes made to the game since we were doing Graviators. In fact, we are doing an entirely new game altogether. This change has come for the better. There are quite a few reasons that Graviators wasn't really working. For one, There wasn't the falling affect that we wanted. The player was moving, but there just wasn't the sense of falling. I think that this was due partly to the fact that the world was too open, and because the player was not falling towards the ground, but towards another player. Another thing, was that we couldn't get the battles to really work well... I guess you'd sya that there was no sense of urgency. It was difficult to determine when the other player had fired at you or not. We also never got the center battles working. There were other reasons, but in the end it was decided that the game just wasn't doing what we wanted it to do. That being, giving the player a sense of falling.

As a result of this, we got together over the summer and began to build this game anew. The new game is. . . Zombie Drop (or something akin to that). In this iteration the player is a zombie that is dropped from the top of a building and guides itself as it plummets to the ground. As part of this we have started over the game completely. 

I've been working mainly on the controls. This involved getting the Kinect to work in the game, and to translate the players movements from the Kinect to the character in the game so that it will respond accordingly.

To make the controls work we started with the Zigfu (OpenNI drivers) for the Kinect. With these drivers in place I worked on the steering of the character and the special movements (dive, rotate, drift up, down, left, and right). In the dive I also made it so that the character on the screen actually rotates and moves faster when diving, then goes back to the normal position when the dive is finished.

As part of my task I was keeping a close eye on the Kinect world for drivers. This is because with the drivers we sere using we couldn't release the game commercially if we decided to do so in the future. The other team was using a wrapper to for the Microsoft Kinect Beta SDK, but this is also not available for commercial release. It was, however a step in the right direction. So I downloaded and installed that package following these instructions http://wiki.etc.cmu.edu/unity3d/index.php/Microsoft_Kinect_-_Microsoft_SDK. The only thing I didn't do was install the Bets driver like it told me to. I instead hit the internet to see if there was a way to use this wrapper with the Microsoft Kinect release SDK. I came across this page https://channel9.msdn.com/coding4fun/kinect/Unity-and-the-Kinect-SDK, which told me to go to the other page that i had already done.

this was a bit frustrating, but after reading through many comments I was eventually directed to this page http://www.rozengain.com/blog/2012/05/10/microsoft-kinect-sdk-wrapper-for-unity-crash-bug-fix/. This was the answer I was looking for. Imade the changes in the wrapper and was able to get the release SDK working in Unity!

After that was working I had to convert all of our controls from the OpenNI configuration to the Microsoft SDK. This involved restructuring the skeletons for the characters (remapping mostly) and changing all of the controls I had previously implemented.  But now, the controls are working for the Kinect SDK.