Mini-challenge 1: 2D Physics Simulation
Hello McGill Physics Hackers! This year we have been busy preparing many cool projects with LEDs for our upcoming Led Arduino Kit, and we want to share the fun with you!
You may have seen 2D physics simulations in games you've played. A famous library is Box2Dopen in new window which is used in most 2D games to add gravity and simulated physics motion to game characters and environments.
In such an environment, one simply specifies the starting position of each ball in Box2D, the strength of gravity, and the dimensions of a static box that does not move. Box2D takes care of the rest!
Can you design your own 2D physics simulation and apply similar features in an LED matrix where one pixel is considered a ball?
Some of the Box2D features for inspiration:
- Applying forces on rigid bodies (in your case a pixel). A force can be defined as a vector. When you apply a force, the force stays constant. Gravity for example would be a force applied to your pixel.
- Applying a kick to your pixel. Instead of continuous force being applied, apply a kick to the pixel in a specific direction and magnitude.
- collision detection! (more advanced) Instead of having one pixel bouncing around, add multiple physics pixels with collision detection
Prize for the best project
Do the full challenge as a hackathon project. The team with the best solution, assuming at least 3 teams take on the challenge, will win Arduino starter kits.
We will be offering an additional prize to teams who wish to submit their projects after the hackathon. Submit before Friday, November 12 at midnight (ET) and include:
File submission: zip your files and submit to
hello[at]p4labs.io with the naming format:
Video presentation submission: share a youtube/vimeo/other link of your 5-min presentation explaining your solution or send to [email protected] via WeTransfer.
Can't complete the whole challenge? Send us everything you tried out and your strategies behind your approach. We'd love to see everything you try out!
Stay in touch with us by subscribing hereopen in new window. We're looking for beta testers and potential collaborators.
Joel and Tawfiq