Pinball is great, but even the best player is a victim of chance and bad luck from time to time. We wondered how we could fix that, and stumbled on the idea of a helpful pinball. So we decided to create a co-op game with one player as a VR pinball, who could help out, with the other playing normally.

What it does

The program simulates a normal game of pinball, where the player uses two flippers to keep the ball in play. However, there is also the option to view the game from a first-person perspective, wherein a person wearing an Oculus Rift can see the game from the point-of-view of the pinball. They can also control the speed of time as well as the spin of the ball with a Myo armband in order to nudge the ball away from (or towards) hazards.

How we built it

The game was built using the Unity3D engine in conjunction with C# scripts and the Myo and Oculus Unity engine scripts. In addition, we used blender to model certain objects.

Challenges we ran into

The Oculus didn't originally show UI elements correctly. We eventually fixed this by mapping an object to the camera, instead of trying to use the new (and buggy) Unity overlay system. We also struggled tuning the physics of our game. Too little force, and the game was slow and boring. Too much, and it broke through our physics objects and sailed into the abyss. After much testing, we finally found a happy medium.

Accomplishments that we're proud of

We wrote a cool script that reorients the camera direction to constantly point in the direction of the pinball's motion instead of rolling with the ball, which the camera (and the Oculus) do by default. We're also very proud of our Myo integration that allows for the pinball player to control the spin of the ball and the speed of time.

What I learned

We had never used Unity or tried game making at all before, so we both learned tons about the game making process and the scripting language C#. We also learned how to use the Myo and the Oculus, and how to integrate them into Unity to make a fun game.

What's next for Pinball Wizard

We don't know, but we hope it will be less nauseating. (Just kidding! We're hoping to add boards with different layouts and themes to make it more like a real pinball machine.)

Share this project: