By: Laura Forde & Ríona Greally
Module: Gesture Based User Interface Development
Lecturer: Damien Costello
This project is for our Gesture Based User Interface Development module and it will be worth 60% of our final grade. We are going to make a car game using Unity and the Myo armband.
RoadRage unlike most car games is a one player Gestured Based Game. Gesture Based, meaning the user controls the game by physically making gestures at the device instead of controlling it by using a keypad or mouse. The aim of the game, is that the player acts as a car that is speeding whilst dodging cars. If the users car collides with a computer generated car then the game ends.
For our application we decided that hand gestures would be best suited.
Using the Myo connect the user controls the car by using some of the gestures familiar to the myo. Myo Connect has various hand gestures it recognizes along with the accelerometer and the gyroscope. The following image shows the gestures that the Myo responed to:
However for our application we are using the "wave-in"
to move the car to the left and "wave-out"
to move the car right in order to avoid the oncoming randomly generated cars for the game to continue and to pick up gems to add to the score.
Myo armband is manufactured by Thalmic Labs and is a device in which is worn on the forearm. It uses a set of electromyographic (EMG) sensors that sense electrical activity iin the forearm muscles. The myo using the EMG sensors then translates the electrical activity from the muscles into computer commands. The EMG sensors combined with a gyroscope, accelometer and magnetometer, recognizes gestures made by the user to do certain tasks on the device it is connected to.
Unity, developed by Unity Technologies is a cross platform game engine used to develop two-dimensional and three-dimensional games and simulations for computers, consoles and mobiles. Unity uses drag and drop functionality along with C# scripting. Unity also supports JavaScript. For 2D games, Unity allows importation oof sprites and an advanced 2D world renderer. For 3D games, Unity allows specification of texture compression, mipmas, and resolution settings for platforms along with various functionalities.
GitHub will be used so Riona and Laura can keep up to date on the latest version of thier project. It will help with knowing what the other person has completed since the last day they made edits to the project. At the start we had three branches, master, DevRiona and DevLaura. This was so our individual contribution to the project could be seen here but both Dev branches caused problems that have been outline in the issues section.
The architecture for this project is simply Unity and Myo working together. We wanted to incorparate a database to hold high scores but we ran into problems that took more time than expected to allow us to get to that stage.
We both enjoyed using Unity and Myo. At times Myo can be hard to work with, it doesn't pick up gestures or it picks up things you're not actually doing. This was a learning experience for both of us as neither of us had worked with Myo before and Riona was using Unity for the first time. We both really enjoyed our time creating this project and trying to get to working the way we wished.