Pocket PhysicsI really like the idea of the popular mini game Crayon Physics: You draw an object on the screen and it instantly becomes physical and interacts with other objects. The first thing that sprung to my mind when seeing it was "This would be awesome on the DS!" And Pocket Physics is what I came up with after two weeks. It isn't really a game, but more of a physical construction kit for your pocket. You can design scenes freely by drawing things with the stylus. Things can be solid, like ramps and floors, or dynamic, like balls or boxes. Like in The Incredible Machine, you can reset the scene, change it, and start the simulation again. It's even more fun if you have a DS Motion, which can be used to control gravity!
Screenshots and videos
Physics LibraryFor this project I ported the Box2D physics library to the DS. Thanks a lot to Robert Kavaler for helping with this! Our fixed point and DS fixed are now official part of Box2D. If you want to use physics in your own DS projects, check out the Box2D source from SVN (instructions here), and check this thread for the latest patches.
Share your sketches!See what other users have created and upload your own sketches at pp.mnfu.com or www.return1.net/site/pp.
PizzaI really like pizza! If you want to give me a pizza, click this button:
Users' Opinions :)
"This is even better than the new macbook air announced today."
"I don't know why I like it. It's just really cool because things really work instead of faking it like games do."
"Thank you so much for this masterpiece of DS homebrew!"
- Massive speed optimizations!
- Fixed the "explosion" bug
- As a side effect of this fix, results are now 100% reproducible
- Moved to Box2D 2.0 (Box2D now has official DS support!)
- Deleting sketches in the loading dialog
- Objects that fall out of the world are no longer simulated
- .PP files now have a single root elemnt => XML compliance
- An author tag is added to the .PP files
- Pins now snap to the center of gravity of shapes
- There iss a separate version that doesn not save screenshots for people with saving problems with the SuperCard Lite
- Added the moving tool
- Improved speed (different timing, inactive objects fall asleep)
- Better repeatability
- sketches are now stored in /data/pocketphysics/sketches by default
- Saving and loading! (introducing the XML-based .pp file format)
- Smart pin placement: While the pen is on the screen, you can move the pin around. It's position is fixed when you lift the pin. While you drag the pin around, the objects that are about to be pined are highlighted.
- Smart deleting: Deleting also works just smart pin placement. Also, pins can now be deleted.
- Toggle viewing window visibility with select.
- larger paper (3x3 screens)
- scrolling using either D-Pad, ABXY, or pen (hold L or R)
- dual screen support (overview on top, zoomed view on bottom)
- open shapes (drawn shapes are only closed if the end is close to the start)
- Using the actual shape for picking => o more accidential deletions
- updated to box2d 2.0 (svn r20)
- using ds hw div/sqrt in box2d
- if simulation is behind time, 2 steps are performed at once => subjectively faster
- faster and better drawing code
- pins are hidden during simulation
- Pins! Pin things to the background or pin two things together
- Numerical fixes in Box2d => (Hopefully) better stability
- Removed dynamic timestep adjustment => Subjectively slower, but more reproducible results
- Standby mode
- initial release
Credits and thank yousPocket Physics stands on the shoulders of giants. The following giants to be precise:
- Petri Purho for Crayon Physics and his other fun games
- Erin Catto for the excellent Box2D physics library
- Brunni for μLibrary
- Robert Kavaler for his help with the fixed point Box2D
- Eric Jordan for his convex decomposition code for Box2D
- The DS Motion guys
- Dovoto, Joat and Wintermute for DevkitPro and libnds
ContactYou can contact me via
- The Pocket Physics thread at the GBADev forums
- The channel #dsdev on Blitzed, where my nick is "_0xtob"
- E-mail: me@<thisdomain>