Players build a video game level in the physical world using post-its on a white wall. Our program takes in a picture of the level and creates a corresponding digital level. Players play that level.
We began the development of this game during our ART 350 Capstone class. The basic idea was that people would be able to place physical platforms onto a blank white wall and play the level they designed. The physical platforms would be seen by a camera and identified by their color in Processing, and made into digital hitboxes for a projected character to interact with. Players would be able to move the character with controllers and see their character moving around in the physical world, projected back out onto the level they designed.
We started developing the game in Processing and built in basic collision detection and image recognition. We later realized Java would be too slow and moved into using OpenGL. It was harder to write the image recognition code in OpenGL, but collision started to get better and the game ran faster. Then we implemented OpenCV with OpenGL to make image recognition easier.
Keeping our players absolutely unlimited made things harder in terms of the programming and plot. We avoided the question of what the plot, goals, and rewards were, which made it difficult to develop gameplay.
Emily wrote code to detect the edges of the post-its by blurring the image, converting it to black and white, finding the corners, and drawing bounding boxes based on that data.
Bridget worked on collision detection and bounding boxes. She demoed boxes moving, colliding, and bouncing off eachother. She also set up the infrastructure for our game: game objects, a game manager, collisions, bounding boxes and other necessary classes.
Audrey worked with texture mapping so that the texture drawing the character will move with a kepress, making him look like he is jumping.
The player can move the character around in the game world using keypresses.
Collision detection is implemented so that the character's movement is restricted by the obstacles in his environment(the postits).
The character now has a walk, idle, and jump animation.
The character will die and the game will end if his health is depleted either by running into the monster or falling off the screen.
We added some physics into the character movement so he will fall with gravity if he walks off a platform or during his jumps.
The game will now recognize green and pink post-its as different types of platforms, so that we can have different post-it notes do different things.
We added in a monster that has an idle and death animation.