// the find
bulletphysics/bullet3
Bullet Physics SDK: real-time collision detection and multi-physics simulation for VR, games, visual effects, robotics, machine learning etc.
Bullet Physics is the C++ physics engine behind a large chunk of the game industry's rigid body and soft body simulation, plus the de facto standard sandbox for robotics reinforcement learning via its PyBullet Python bindings. If you're training a robot arm or building a physics-based game, this is the library most of your dependencies already assume you're using.
Battle-tested collision detection pipeline (GJK/EPA, SAT, BVH) that has shipped in AAA titles and held up under adversarial game workloads. PyBullet makes the full simulation accessible from Python with zero C++ build steps — `pip install pybullet` and you're running OpenAI Gym environments in minutes. URDF/SDF support means you can drop in robot models directly from ROS without conversion. GPU-accelerated broad phase via OpenCL is genuinely implemented, not just planned.
Effectively unmaintained at the C++ level — the issue tracker was closed due to neglect, the last substantive C++ commit was years before the 2025 push date, and the maintainer's energy has clearly shifted to a commercial successor (Tiny Differentiable Simulator). The build system is a mess: premake4 binaries checked into the repo, multiple competing build scripts (cmake, premake, bat files), and no obvious canonical path. Soft body simulation is the weak link — it works but lags far behind the rigid body solver in accuracy and documentation. If you need differentiable physics for gradient-based learning, Bullet is a dead end; you'll migrate to MuJoCo or Brax anyway.