Fizz X

Fizz is a lightweight collision library in Lua. It's designed specifically for old-school platformers and overhead action games. Fizz is licensed under the MIT License.


  • Three different shape types: circles, rectangles and line segments.
  • Line segments can be used for making slopes and possibly "one-sided" platforms. They handle collision differently based on direction and "push" other intersecting shapes at 90 degrees counter-clockwise of the segment slope.
  • Static shapes - static shapes are immobile and do not respond to collisions or gravity.
  • Kinematic shapes - kinematic shapes do not respond to collisions or gravity, but can be moved by manually changing their velocity. Kinematic shapes can be used to simulate moving platforms and doors.
  • Dynamic shapes respond to collisions and gravity. Dynamic shapes can be used to simulate the moving objects in your game.
  • Quadtree space partitioning to reduce the number of collision tests. It can can be disabled, although this is not recommended especially if your simulation contains a large number of dynamic shapes.