Post-it Platformer

created by Emily Guerra, Bridget Winn and Audrey Gerughty

Overview

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.

Project Image
Project Image

Initial Development

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.

Programming

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.

Roadblocks

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.

Project Image

25% Milestone Updates

post-it recognition

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.

collision detection

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.

basic spritesheet animation with keypress

Audrey worked with texture mapping so that the texture drawing the character will move with a kepress, making him look like he is jumping.

50% Milestone Updates

character movement

The player can move the character around in the game world using keypresses.

collision

Collision detection is implemented so that the character's movement is restricted by the obstacles in his environment(the postits).

spritesheet animation

The character now has a walk, idle, and jump animation.

75% Milestone Updates

health/gameplay

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.

gravity

We added some physics into the character movement so he will fall with gravity if he walks off a platform or during his jumps.

post-it colors

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.

spritesheet animation

We added in a monster that has an idle and death animation.

User Testing

Initial Thoughts

  • cute idea, great for kids to see future of coding
  • this is impressive, image processing isn't easy
  • need maybe slightly less extreme controls
  • cool idea, lots of potential
  • interesting idea, would be cool if another color was added for a start location
  • fun platforming game
  • reminds me of original mario platformer
  • Bugs Found

  • can't distinguish between orange and pink well
  • lost a jump pad
  • does not die when you stand next to monster, only when you actively hit him
  • didn't collect all coins but game still ended
  • fell through small cracks
  • went through jump box
  • How did you like the movement? Gravity? Collision?

  • would prefer "space" for jump
  • jump was a good height
  • jump took time to get used to
  • jumping doesn't feel realistic
  • shouldn't be able to float
  • gravity kicks in really quickly
  • strage collion on edges of platforms
  • Comments/thoughts/future wishes for the project?

  • monsters with projectiles
  • 100% Updates

  • fixed launchpads so that you can't go through the bottom
  • slowed down movement
  • made jumping more realistic
  • fixed color thresholds
  • added space to jump, arrow keys for controls, and enter to restart
  • character chanes color as health deteriorates
  • character channges the direction he's faces with movement
  • debugged coin collection
  • added post-it color for start location
  • Video Demo