Bullet is a 3D game multiphysics library that provides state of the art collision detection and soft body and rigid body dynamics. Bullet is integrated into Cinema 4D, Lightwave, and Blender. A Houdini and Maya Plugin is available. It has a modular extendible C++ design with hot-swap of most components. The back-ends were optimized for pthreads/Win32 Threads multi-threading and PS3 Cell SPU. Other features include discrete and continuous collision detection (CCD), swept collision queries, ray casting with custom collision filtering, generic convex support (using GJK), capsule, cylinder, cone, sphere, box, and non-convex triangle meshes. Rigid body dynamics include constraint solvers, generic constraints, ragdolls, hinges, and ball-sockets. Constraint limits and motors are supported. Soft body support includes cloth, rope, and deformable objects. Import and export into COLLADA 1.4 Physics format is supported. Dynamic deformation of non-convex triangle meshes is supported by refitting the acceleration structures.
Homepage
Download
Recent Releases
3.2426 Apr 2022 07:05
minor feature:
manually copy data, to avoid possible memory leaks.
Thanks to Jason Peng and Gilbert Feng for the report and reproduction case.
2.8730 Sep 2017 19:25
minor feature:
Minitaur pybullet trained with TF Agents PPO, improved motor model, randomization.
Pybullet Ant trained using TensorFlow Agents.
Pybullet KUKA grasp training/enjoy using Tensorflow+OpenAI gym+baselines DQN.
2.86.120 Feb 2017 23:25
minor feature:
options to change solver type and mode.
example browser: for GUI button toggle state.
compile error on GCC.
cmake build support for VR demo (WIN32 only).
cmake only use BT_ENABLE_VR for the _VR target.
Add and use BT_ID_ math functions for idScalar.
Add the pybullet vrhand.py script used in this haptic video:
removed some link from MJCF hand, the parser doesn't handle that root?.
Update btSerializer.cpp.
Update btSerializer.cpp.
add a b3Clock::usleep in PhysicsClientUDP to avoid clogging all resou?.
Merge branch 'master' of https://github.com/erwincoumans/bullet3.
pybullet clear error after parsing UDP string argument (instead of ?.
UDP networking improvements and experiments (send CMD_STEP_FORWARD_SI?.
add a usleep(0) to improve UDP performance on Windows (busy-loop eats?.
UDP disconnect needs to set m_data- m_isConnected=false.
Move ChromeTracing in its own file, and add tracing support for VR se?.
compile error when BT_THREADSAFE not defined.
'safeNormalize' (probably should remove it).
rendering of rays in Benchmark demo when using BT_USE_DOUBLE_PREC?.
Add profile markers for BenchmarkDemo raytest.
update pybullet_quickstartguide.pdf from https://docs.google.com/docu?.
add spinning_friction to sphere2_rolling_friction.urd.
URDF parser: allow inertial element in just ixx, iyy, izz format (non?.
Modify damped least square IK formulation. Test setting joint damping?.
no special case for
2.8326 Jul 2015 20:16
major feature:
Bullet Physics SDK 2.83 is a first release using the new example browser. See the docs/BulletQuickstart.pdf how to get started.