Analysis updated 2026-07-03 · repo last pushed 2026-07-03
Add realistic 3D collision and rigid body physics to a custom game engine.
Build hinged doors, wheels, or motors using joint constraints.
Implement player avatar movement with the built-in character mover system.
Create deterministic networked gameplay where physics run identically across machines.
| erincatto/box3d | sandboxie/sandboxie | lienol/openwrt | |
|---|---|---|---|
| Stars | 2,728 | 3,633 | 3,660 |
| Language | C | C | C |
| Last pushed | 2026-07-03 | — | — |
| Maintenance | Active | — | — |
| Setup difficulty | moderate | moderate | hard |
| Complexity | 4/5 | 3/5 | 5/5 |
| Audience | developer | ops devops | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Requires a C17 compiler and integration into an existing C or C++ build system, no external dependencies but you must wire it into your game loop manually.
Box3D is a 3D physics engine for games. In plain terms, it handles the simulation of physical objects, how they fall, collide, bounce, slide, and break, so that a game world feels realistic and responsive. If you're building a 3D game and need crates to stack, balls to roll downhill, or vehicles to respond to terrain, this library does that heavy lifting for you. At a high level, the engine handles two big jobs: collision detection and physics simulation. On the collision side, it knows about common shapes like spheres, capsules, convex hulls, and triangle meshes. It can detect when objects hit each other (even when moving very fast), filter which objects should interact, and support queries like ray casts, useful for things like aiming a weapon or checking line of sight. On the physics side, it solves how bodies move after impact, supports joints and motors so you can build things like hinged doors or wheels, and includes a "character mover" system for handling how a player avatar walks around the world. It also supports recording and replay, which helps with debugging or creating deterministic gameplay. The people who'd use this are game developers working in C or C++ who need real-time 3D physics and want to integrate it directly into their engine. For example, someone building a custom game engine (rather than using Unity or Unreal) could link this in to get collision and rigid body dynamics without writing a physics system from scratch. It runs on Windows, macOS, and Linux, and ships with a sample app showing off its capabilities. What's notable is the engineering approach. It's written in portable C17 with no external dependencies, uses multithreading and SIMD instructions for performance, and is designed to handle large piles of bodies efficiently. It also offers cross-platform determinism, meaning a simulation runs identically on different machines, which matters for networked games or competitive play where consistency is critical. The project is created by Erin Catto, who also built the widely used Box2D engine, and is MIT licensed.
A 3D physics engine for games that handles how objects fall, collide, slide, and break in real time. You link it into your C or C++ game engine so crates stack, balls roll, and vehicles respond to terrain without writing physics from scratch.
Mainly C. The stack also includes C, C17, SIMD.
Active — commit in last 30 days (last push 2026-07-03).
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.