Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Gideros
  3. Bump

Bump

MITLuademo-2.0.0

A fast, game-oriented collision detection library for Lua focused on axis-aligned rectangles.

GitHubGitHub
1.1k stars85 forks0 contributors

What is Bump?

bump.lua is a collision detection library for Lua that specializes in axis-aligned bounding box (AABB) collisions. It is designed for 2D games where performance and simplicity are key, offering fast detection and basic collision responses like sliding and bouncing. The library prevents tunneling and supports spatial queries, making it a versatile tool for game developers.

Target Audience

Lua game developers, particularly those using frameworks like LÖVE, Corona SDK, or Cocos2d-x, who need efficient collision detection for tile-based games, platformers, or top-down adventures.

Value Proposition

Developers choose bump.lua for its speed, minimal memory footprint, and game-focused design. Unlike heavier physics engines, it provides just enough collision handling for most 2D game genres without unnecessary complexity.

Overview

A collision detection library for Lua

Use Cases

Best For

  • Tile-based games where entities are mostly rectangular
  • Platformers like Super Mario that require sliding collision responses
  • Top-down adventure games such as Zelda
  • Shoot 'em ups and fighting games with fast-moving projectiles
  • Games needing lightweight spatial queries for rendering or interaction
  • Scenarios where realistic physics simulations are unnecessary

Not Ideal For

  • Games requiring polygonal or circular collision shapes for accurate hitboxes
  • Simulations needing realistic physics like object stacking, rolling, or continuous interactions
  • Projects where collision resolution order must be deterministic and objects move simultaneously

Pros & Cons

Pros

Fast AABB Detection

Optimized solely for axis-aligned bounding boxes, enabling high performance and simple integration, as highlighted in the README's focus on speed over realism.

Built-in Tunneling Prevention

Treats all items as 'bullets' to prevent fast-moving objects from passing through others, a critical feature for fast-paced games like shoot 'em ups.

Gameistic Collision Responses

Provides basic response types like slide, bounce, touch, and cross, tailored for gameplay mechanics such as platformer movement, with filter functions for customization.

Versatile Spatial Queries

Can query items by point, rectangle, or segment, doubling as a lightweight spatial database for rendering optimizations or interaction detection.

Cons

Limited to Rectangles Only

Does not support polygons, circles, or other shapes, requiring workarounds or switching to libraries like HardonCollider for complex geometries, as admitted in the README.

Sequential Collision Resolution

Moves and collides objects one at a time, which can lead to order-dependent behavior and is unsuitable for simulations requiring simultaneous interactions.

Manual Item Management

Requires explicit calls to add, remove, and update items, adding boilerplate code compared to more automated physics engines.

Frequently Asked Questions

Quick Stats

Stars1,079
Forks85
Contributors0
Open Issues10
Last commit2 years ago
CreatedSince 2012

Tags

#collision-detection#game-development#lua-library#2d-games#love2d#physics-engine#game-physics

Built With

L
Lua

Included in

Lua4.5kLÖVE4.3kGideros34
Auto-fetched 7 hours ago

Related Projects

awesome-love2dawesome-love2d

A curated list of amazingly awesome LÖVE libraries, resources and shiny things.

Stars4,327
Forks240
Last commit22 days ago
inspect.luainspect.lua

Human-readable representation of Lua tables

Stars1,525
Forks200
Last commit3 months ago
lumelume

Lua functions geared towards gamedev

Stars1,216
Forks88
Last commit2 years ago
lumelume

Lua functions geared towards gamedev

Stars1,216
Forks88
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub