Objective
The goal of this project was to create an alternative controller for an existing game (played with keyboards) using low fidelity materials and experimental Beholder software / markers
The PAC-MAN Game: https://www.pacman1.net/
The initial Idea
I wanted to create a controller where the user would essentially play PAC-MAN with a giant spinner. To denote the four directions in the game, players need to spin PAC-MAN's mouth to the corresponding positions of up, down, right, and left.
To prototype the concept of my controller, I used Beholder markers, tape, a bent paper clip, and butcher block paper. There was a bottom and top layer for the spinner. The bottom layer had the Beholder markers arranged in the four arrow key directions. The top layer resembled PAC-MAN's face. It had a wedge cut into it, and it was intended to sit on top of the bottom layer. As users spin the top layer, it would reveal one of the markers denoting one direction while covering the other three markers denoting the rest of the directions. The bent paper clip served to be a makeshift axis, which needed to be taped down to the table along with the bottom layer of the spinner.
The top and bottom layers of the spinner
The top layer stacked on the bottom layer with the paperclip axis
Setting Up Beholder
Beholder is experimental software developed by the graduate students in the CU ATLAS program. It converts marker detection (including position and angle) from a camera to keyboard input. These markers can be printed in a variety of sizes on pieces of paper. Since PAC-MAN is a game with only four directions, coupling a marker to an arrow key was fairly straightforward, and the Beholder application used a sort of drag-and-drop programming style (at least regarding the interface). Based on the orientation of my controller, a camera would need to be mounted from above to get a bird's eye view of the markers.
The markers coupled to their respective arrow keys in Beholder
Refinement
To be honest, the paper prototype did not spin very well. The top layer would keep getting caught on the tape, and I had to lift it to get any sort of rotation. The nice thing was that Beholder was able to detect the markers. My initial test told me three things:
I needed a sturdier material for both layers of the spinner
I needed more space between the layers
I needed an easier way to hold onto and rotate the spinner
To solve these issues, I decided to make my spinner out of foamboard, design an axis that would create space between the two layers, and design a crank to easily rotate the top layer.
These are the designs for the bottom (inner) and top (outer) layers. I designed my new spinner with the intention of laser cutting the layers out of foamboard. Since the maximum width of the laser cutting bed was 28 inches, my dimensions had to be adjusted accordingly.
The designs and dimensions for my axis and crank were heavily influenced by the materials I could find. I just so happened to get my hands on thread spools, a tape roll, and a solid core wire spool. While the axis was hot glued into place, the crank could spin freely.
A drawing of my refined spinner with a new axis and crank
The top and bottom layers of the spinner laser cut out of foamboard
The axis glued to the bottom layer
The crank glued to the top layer
The bottom layer with the axis and markers
The top and bottom layers of the spinner with the axis creating space between the two
Rotating the Spinner
Similarly to the paper concept of the spinner, the bottom layer would sometimes rotate with the top layer, which was not ideal. This was because the foamboard I used for the bottom layer was warped, so the top layer would catch and rub against the bottom layer, spinning the both of them. To fix this problem, I originally used some gaff tape to adhere the bottom layer to the table. Then, I realized I could use cabinet liner underneath the bottom layer so that it could grip onto the table.