SAGE Physics Games and Toys
Bespoke Physics Code and Physics Engines
Loading...
Searching...
No Matches

For the purposes of this repository, a game is something that you can win or lose, while a toy is something that you can play with until you are bored. These games and toys were made with SAGE.

1. Hand-coded 2D Physics

The following toys and games use hand-coded (bespoke) physics code.

  1. 8-ball Pool End Game: Exact circle-to-circle and circle-to-axis collision detection and response.
  2. Shapes Library: A fast and sloppy collision detection and response library for moving circles.
  3. Collision Math Toy: A toy for experimenting with the Shapes Library.
  4. Pinball Game: A rudimentary pinball game using the Shapes Library.
  5. Ball and Spring Toy: Verlet integration for easy spring and stick implementation.

2. 2D Physics With Box2D

The following games and toys require you to install Box2D, an open-source 2D physics library.

  1. Box2D Render Library: A renderer for Box2D bodies.
  2. Box2D Bouncy Things Toy: Balls and boxes bouncing around without sound.
  3. Box2D Joint Toy: Examples of Box2D joints without sound.
  4. Box2D Cannon Game: Knock down crates with a cannon using a kludged method to play collision sounds.
  5. Box2D Cannon Game with Stars: Now using collision manifolds to play sounds and generate stars at collision points.
  6. Box2D Blank Game: This game really is blank, but you can use it as the basis for your own Box2D game.
  7. Stroop Test Game: A game based on the Stroop test.
  8. Binary Counter Toy: A gravity-fed ripple-carry counter using Physics.
  9. Cannon Lullaby Toy: Cannonballs hit emitters to play a tune regardless of the cannon's position.

3. 3D Physics With Bullet Physics

The following toy requires you to install Bullet Physics, an open-source 3D physics library.

  1. Bullet Physics Block Toy: Knock some blocks and other objects off the edge of a finite plane.