Jack Chen
ICM Group Assignment – “Evolve”
This week, I worked together with Bei and Zixun on a collaborative project using P5.js and PoseNet pose detection machine learning model.
Our initial idea was to take a bouncing ball game made for an earlier class and replace the mouse input with the nose position detection on PoseNet. We also added a time and score keeping function to the game.

With the basic mechanics in mind, I thought of a narrative for our game – the journey of a single cell organism trying to survive and evolve. I made a logo text using Adobe illustrator and imported the image into the opening title of the P5 sketch. A video of Perlin noise was also generated on After Effects and plays on loop in the background, simulating the aesthetic of looking at tiny cells through a microscope.

The most challenging part of the project has been coding all the mechanics of the game. We decided to modify the original ball dodging game to dodging balls of different colors and using mouse input to change the color of the player controlled ball, which can eat other balls to become bigger if the color matches another ball. Coding the relationship between different game screen was also challenging, there are many details that had to be written out such as stopping and resetting the timer when the game restarts and the splicing of balls from an array when eaten – a mechanic which we still haven’t perfected by the time this blog is written.
The current version of the game can be played here:
https://editor.p5js.org/hubei-art/sketches/Lz1ucH2rK