Физическая библиотека на C++17 с привязками Python для расчёта кинематики, динамики и контактов у сочленённых роботов и анимированных персонажей.
bulletphysics/bullet3
Bullet Physics SDK — библиотека C++ для обнаружения столкновений и мультифизического моделирования в реальном времени, используемая в играх, VR, робототехнике и машинном обучении.
- Звёзды
- 14,841
- Форки
- 3,110
- Открытые issues
- 439
- Последний коммит
- 29 дней назад
Что это?
Bullet Physics SDK — библиотека C++ для обнаружения столкновений и физического моделирования в реальном времени. Она поддерживает динамику твёрдых тел и моделирование мягких тел и используется в играх, VR, визуальных эффектах, робототехнике и машинном обучении.
В репозиторий входит PyBullet — модуль Python на базе движка, широко используемый в исследованиях робототехники и обучения с подкреплением. В комплект также входят демо, браузер примеров и модульные тесты. Библиотека рассчитана на сборку в Windows, Linux, macOS, iOS и Android; для дополнительных демо требуется OpenGL 2 или 3.
В проекте также есть экспериментальная поддержка OpenCL, позволяющая выполнять обнаружение столкновений и моделирование динамики твёрдых тел на GPU; для неё требуется мощная настольная видеокарта. Bullet распространяется по лицензии zlib и устанавливается через vcpkg, CMake или premake.
Ключевые возможности
- 01Обнаружение столкновений и моделирование динамики твёрдых тел в реальном времени
- 02Моделирование мягких тел и мультифизических систем
- 03Python-привязки PyBullet для робототехники и обучения с подкреплением
- 04Экспериментальное ускорение обнаружения столкновений и моделирования динамики на GPU с помощью OpenCL
- 05Кроссплатформенная сборка с помощью CMake, premake и vcpkg
Сценарии использования
- Добавление физики и обработки столкновений в игры и VR-приложения
- Моделирование роботизированных манипуляторов, ног или захватов для исследований в области робототехники
- Обучение агентов с подкреплением в средах с физической симуляцией
- Создание прототипов визуальных эффектов, для которых нужна динамика твёрдых или мягких тел
Быстрый старт
- 1
Установите пакет PyBullet для Python
pip3 install pybullet --upgrade --user - 2
Запустите пример среды PyBullet
python3 -m pybullet_envs.examples.enjoy_TF_AntBulletEnv_v0_2017may
Что важно знать
- Трекер проблем закрыт, поэтому поддержку можно получить на форумах PyBullet.
- Для экспериментальной поддержки GPU через OpenCL требуется мощная настольная видеокарта; на CPU-устройствах с OpenCL она не работает.
- Для VR-песочницы в Windows требуется оборудование HTC Vive или Oculus Rift.
В подборках
Темы
Частые вопросы
- Что такое bullet3?
- Bullet Physics SDK — библиотека C++ для обнаружения столкновений и мультифизического моделирования в реальном времени, используемая в играх, VR, робототехнике и машинном обучении. Bullet Physics SDK — библиотека C++ для обнаружения столкновений и физического моделирования в реальном времени. Она поддерживает динамику твёрдых тел и моделирование мягких тел и используется в играх, VR, визуальных эффектах, робототехнике и машинном обучении.
- bullet3 можно использовать бесплатно? Какая у него лицензия?
- bullet3 распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- bullet3 всё ещё поддерживается?
- Активно поддерживается. Последний коммит в bullet3 — 9 окт. 2026 г..
- Для чего можно использовать bullet3?
- Добавление физики и обработки столкновений в игры и VR-приложения Моделирование роботизированных манипуляторов, ног или захватов для исследований в области робототехники Обучение агентов с подкреплением в средах с физической симуляцией Создание прототипов визуальных эффектов, для которых нужна динамика твёрдых или мягких тел
- Как установить bullet3?
- Установите пакет PyBullet для Python: pip3 install pybullet --upgrade --user Запустите пример среды PyBullet: python3 -m pybullet_envs.examples.enjoy_TF_AntBulletEnv_v0_2017may
- Где скачать bullet3?
- Исходный код и инструкции по установке — на GitHub: https://github.com/bulletphysics/bullet3
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Многопоточная библиотека на C++ для симуляции твёрдых тел и обнаружения столкновений в играх и VR-приложениях.
Физические движки на Rust для 2D и 3D, предназначенные для игр, анимации и робототехники; доступны привязки для C, Python, JavaScript и Bevy.
Универсальный физический движок для быстрой и точной симуляции контактирующих сочленённых тел, широко используемый в робототехнике и исследованиях машинного обучения.
Плагин для Unreal Engine 5, который запускает физику MuJoCo в редакторе и игре, сочетая точную динамику контактов с рендерингом Unreal.
Абстрактный интерфейс физики на C++ для симуляции роботов, позволяющий переключаться между разными физическими движками с помощью системы плагинов.