Biblioteca de física en C++17 con bindings de Python para simular la cinemática, la dinámica y los contactos de robots articulados y personajes animados.
bulletphysics/bullet3
Bullet Physics SDK es una biblioteca de C++ para detección de colisiones en tiempo real y simulación multifísica, usada en juegos, VR, robótica y aprendizaje automático.
- Estrellas
- 14,841
- Forks
- 3,110
- Issues abiertos
- 439
- Último commit
- hace 29 días
¿Qué es?
Bullet Physics SDK es una biblioteca de C++ para la detección de colisiones en tiempo real y la simulación física. Incluye dinámica de cuerpos rígidos y simulación de cuerpos blandos, y se utiliza en juegos, VR, efectos visuales, robótica y aprendizaje automático.
El repositorio incluye PyBullet, un módulo de Python basado en el motor que se usa ampliamente en investigación de robótica y aprendizaje por refuerzo. También incluye demostraciones, un navegador de ejemplos y pruebas unitarias. La biblioteca está diseñada para compilarse en Windows, Linux, macOS, iOS y Android; las demostraciones opcionales requieren OpenGL 2 o 3.
El proyecto también ofrece compatibilidad experimental con OpenCL para ejecutar la detección de colisiones y la dinámica de cuerpos rígidos en la GPU, lo que requiere una GPU de escritorio de gama alta. Bullet se distribuye bajo la licencia zlib y se puede instalar mediante vcpkg, CMake o premake.
Funciones clave
- 01Detección de colisiones en tiempo real y dinámica de cuerpos rígidos
- 02Simulación de cuerpos blandos y multifísica
- 03Bindings de Python de PyBullet para robótica y aprendizaje por refuerzo
- 04Aceleración experimental con OpenCL en la GPU para colisiones y dinámica
- 05Compilaciones multiplataforma con CMake, premake y vcpkg
Casos de uso
- Añadir física y gestión de colisiones a juegos o aplicaciones de VR
- Simular brazos, piernas o pinzas robóticas para investigación en robótica
- Entrenar agentes de aprendizaje por refuerzo en entornos simulados físicamente
- Crear prototipos de efectos visuales que requieran dinámica de cuerpos rígidos o blandos
Inicio rápido
- 1
Instala el paquete de Python PyBullet
pip3 install pybullet --upgrade --user - 2
Ejecuta un entorno de ejemplo de PyBullet
python3 -m pybullet_envs.examples.enjoy_TF_AntBulletEnv_v0_2017may
Antes de usarlo
- El rastreador de incidencias está cerrado, por lo que la asistencia se ofrece a través de los foros de PyBullet.
- La compatibilidad experimental con GPU mediante OpenCL requiere una GPU de escritorio de gama alta y no funciona en dispositivos CPU con OpenCL.
- El entorno aislado de VR para Windows requiere hardware HTC Vive u Oculus Rift.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es bullet3?
- Bullet Physics SDK es una biblioteca de C++ para detección de colisiones en tiempo real y simulación multifísica, usada en juegos, VR, robótica y aprendizaje automático. Bullet Physics SDK es una biblioteca de C++ para la detección de colisiones en tiempo real y la simulación física. Incluye dinámica de cuerpos rígidos y simulación de cuerpos blandos, y se utiliza en juegos, VR, efectos visuales, robótica y aprendizaje automático.
- ¿bullet3 es gratuito? ¿Qué licencia tiene?
- bullet3 es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿bullet3 sigue mantenido?
- Mantenimiento activo. El último commit de bullet3 fue el 9 oct 2026.
- ¿Para qué puedo usar bullet3?
- Añadir física y gestión de colisiones a juegos o aplicaciones de VR Simular brazos, piernas o pinzas robóticas para investigación en robótica Entrenar agentes de aprendizaje por refuerzo en entornos simulados físicamente Crear prototipos de efectos visuales que requieran dinámica de cuerpos rígidos o blandos
- ¿Cómo se instala bullet3?
- Instala el paquete de Python PyBullet: pip3 install pybullet --upgrade --user Ejecuta un entorno de ejemplo de PyBullet: python3 -m pybullet_envs.examples.enjoy_TF_AntBulletEnv_v0_2017may
- ¿Dónde consigo bullet3?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/bulletphysics/bullet3
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Biblioteca de C++ para simulación de cuerpos rígidos y detección de colisiones, optimizada para varios núcleos y destinada a juegos y aplicaciones de VR.
Motores de física 2D y 3D escritos en Rust para juegos, animación y robótica, con bindings para C, Python, JavaScript y Bevy.
Motor de física de propósito general para simular con rapidez y precisión cuerpos articulados en contacto, muy utilizado en investigación de robótica y aprendizaje automático.
Plugin de Unreal Engine 5 que ejecuta la física de MuJoCo en el editor y durante la ejecución, combinando dinámicas de contacto precisas con el renderizado de Unreal.
Una interfaz abstracta de física en C++ para simular robots que permite cambiar de motor de física mediante un sistema de plugins.