for the final project, I have a few ideas, some are more creative than practical use, I’ll mention two but a third could be further working on the instrument from last week.
the first is recreating something like this:
or even this:
using p5js to create the design, and then using Arduino to change the color with someone’s body or some sort of control and if possible I would like to sync the design with music. the idea is to have someone’s body create a generative art piece, perhaps it could even be to create the art with their motion.
the second idea is to recreate a game like polar bowler
where I would use p5js for a screen and Arduino for the game’s controls and sound, which I could also use with p5js.
i could perhaps combine and use the other design as a background.
My PSP consumed a large chunk of my childhood, specifically, a game called Tekken: Dark Resurrection. I want to recreate this game, except this time instead of entering commands through buttons and joysticks, like in the original, I want to use proximity and pressure sensors linked to Arduino and computer vision on p5.js. My game will be played with physical movements by the user, which is captured using sensors and camera. Specific movements will correspond to logical fighting moves (eg. punches, kicks, blocks).
Possible Challenges:
Computer being able to capture user movements
Computer being able to distinguish between user movements
In-game mechanics such as damage system and avatar animations
I would like to attempt at incorporating science into my final project by making an interface where the user can pick and choose different genes to swap in and out, and through that they’ll learn what diseases come about with these mutations. I see a 3D DNA strand that is rotatable, perhaps with the use of LEDs to specify various locations that one could interact with and have a screen pop up on the side with the results of their interaction.
This project would require a lot of scientific research, just because I think that the specificity of a disease’s genetic origin may not be super clear. But I want the user interaction to be a distance away from the projected screen to give it a more future scientific feel. I also want to be able to explore the use of cameras and with that have the user’s entire body interact with the piece instead of just one part.
For my final project, I was thinking about a way of making an interactive basketball shooting game in which the user would control the direction and power using sensors.
The game would have a basketball spawn at different distances and angles from the hoop and there would be an arrow in front of the ball controlled by a potentiometer to allow the user to aim at the hoop correctly. The more shots the user makes the more difficult the shots will be.
There would also be a power meter on the screen which could be controlled by a flex sensor so that the user can bend it until the right power required is reached. The basketball will start moving when the flex sensor is released by the user, to simulate a flick.
The game would have a timer that runs and the user would have to score as much as possible within this time.
For the final project, I want to build a car that will feature both autopilot mode and manual driving mode. The user will have the choice to decide which mode they want to choose to drive the car.
If the user chooses the autopilot mode, the car will be able to move around and avoid all obstacles with (obstacle detections) and also be able to drive automatically on a predefined course/ path. Whereas for the manual mode, the user will be able to control the car through p5.js using the arrows. (perhaps connect it to a controller)
I also plan to build a driving course that the user can drive in and test the autopilot mode. I’m planning to have a line following feature where the car will follow the line on the road. (Even make decisions where possible, Maybe that is too complicated?)
P5.js
The p5.js will show a window with its instructions and feature for the 2 modes (autopilot mode and manual mode) allowing the user to choose their option. The arrows will allow the user to control the car’s movement and drive the car around the course
Visual Generative Art (?)
I loved one of the class examples of how sound was generated upon touching a screen. This led to me planning to create a generative art piece that detects hand motions using Computer Vision/ Arduino’s Camera to generate designs on P5js. I am mainly concerned about finding the right detector.
If this doesn’t work, I plan on using pressure sensors covered with a white/black screen upon which the P5js art would be projected. Touching this screen would generate designs (flowers?)
I wanted to make something that feels like it has real world consequences, so my idea for the final project is a real life stock trading application. I want to create an integration that creates an interactive experience for the end user.
Implementation
There are 3 components to this idea: A physical method to trading stocks, a display of profits, and a web server that connects the integration to the outside world. The user should be able to choose to either buy Stock A, Stock B, or skip the purchase. There will also be a button to liquidate all stocks and turn a profit.
Arduino Implementation:
A potentiometer that the user turns to select stock A, stock B, or skip
A button that the user can press to liquidate stocks
A servo that pushes down an airhorn upon liquidation
P5js Implentation:
A display with the text of Stock A, B or skip
A Graph with current value of stocks
Text showing how much liquid and stock money the user has
Web Server Implementation:
Send new stock data to P5JS
Send wallet data to p5js
Send purchase requests to Alpaca Stock API
The catch
its real money that I run away with at the end of the semester.
For my final project, I want to combine one of my favorite hobbies, drawing, with p5.js and arduino. I want to create a system that uses arduino to create an art piece on p5.js. I can use pressure pads to create lines on p5.js that eventually develop into an art piece. I want to create some generative art piece that uses a creative way to trigger the design. This is an example of the art I would like to generate.
A creative way to trigger it would be by using the camera to track your movement and then translate it into the design instead of using the mouse. Maybe another way would be to use a remote control where you press buttons and it triggers the design.
For my final project, I want to make a game that can be controlled via Arduino. Within this general idea, I have three sub-ideas:
Piano Tiles
Building upon the project I worked on with Dev, I could make a game that prompts the user to use our piano – made with Piezoelectric pressure sensors – and hit specific notes to progress in the name. On the other hand, hitting the wrong keys on the piano will take away from the player’s progress in-game. My inspiration for this idea comes from the mobile game “Piano Tiles” that I used to play as a kid:
Fruit Ninja
Another game I used to play when I was younger was Fruit Ninja:
I could use motion sensors connected in a sequence with the Arduino to record input from the user that then cuts fruit in the p5js sketch (divided into grids to match the corresponding motion sensors).
Car Game
While browsing online for other ideas, I realized that I could also build a small robot car that can then be used to play a game in another p5js sketch. The robot car can be made using motors as the primary component. The car can be remotely connected with an Arduino, or the car can have an Arduino of its own that communicates with an Arduino connected with a computer via radio waves. I will have to check if equipment like this is available in the IM Lab though. The player can use switches to control the car’s direction and pressure sensors to control acceleration and breaking. I think learning about motors this week will really help me think more about this idea.
Overall, by this week, I will finalize a final project idea from the list above.