Bevy — игровой движок на Rust с архитектурой Entity Component System для 2D- и 3D-игр.
avianphysics/avian
Физический движок для 2D и 3D на ECS, созданный специально для игрового движка Bevy на Rust.
- Звёзды
- 3,280
- Форки
- 302
- Открытые issues
- 212
- Последний коммит
- позавчера
Что это?
Avian — физический движок для Bevy, написанный на Rust и представленный отдельными крейтами для 2D (avian2d) и 3D (avian3d). Он напрямую интегрируется с Entity Component System в Bevy: физические объекты — это обычные сущности и компоненты, а не отдельный физический мир, который нужно синхронизировать с игровым.
Движок поддерживает динамические, кинематические и статические твёрдые тела, а также скорости, силы, демпфирование, блокировку осей, переход в спящий режим и непрерывное обнаружение столкновений. Для обнаружения столкновений используется библиотека Parry. Также доступны события столкновений, слои, хуки столкновений, соединения (fixed, distance, prismatic, revolute, spherical) и пространственные запросы, например raycast и shapecast. В движок также входят интерполяция Transform для фиксированных временных шагов и отладочная визуализация.
Avian поддерживает точность f32 и f64; по умолчанию используется f32. Документация и примеры для 2D и 3D доступны на docs.rs и в репозитории.
Ключевые возможности
- 01Динамические, кинематические и статические твёрдые тела со скоростью, демпфированием и блокировкой осей
- 02Обнаружение столкновений на базе Parry, со слоями, событиями и хуками столкновений
- 03Встроенные соединения: fixed, distance, prismatic, revolute и spherical
- 04Raycast, shapecast и другие пространственные запросы через компоненты или параметр SpatialQuery
- 05Интерполяция и экстраполяция Transform для фиксированных временных шагов
- 06Поддержка точности f32 и f64
Сценарии использования
- Добавление физики твёрдых тел и столкновений в 2D- или 3D-игру на Bevy
- Создание соединений и ограничений, например шарниров или направляющих, в симуляции на Bevy
- Выполнение raycast или shapecast для игровых задач, например проверки видимости или траектории снаряда
Быстрый старт
- 1
Добавьте avian3d в зависимости Cargo.toml (для 2D используйте avian2d).
avian3d = "0.8" - 2
Добавьте PhysicsPlugins в приложение Bevy и создавайте физические сущности с помощью RigidBody и Collider.
Что важно знать
- Библиотека привязана к игровому движку Bevy, поэтому вне Bevy она бесполезна.
- Это версия до 1.0 (0.8), поэтому API может меняться от релиза к релизу.
- Для каждой версии Bevy требуется соответствующая версия Avian, поэтому при обновлении Bevy может понадобиться обновить их согласованно.
В подборках
Темы
Частые вопросы
- Что такое avian?
- Физический движок для 2D и 3D на ECS, созданный специально для игрового движка Bevy на Rust. Avian — физический движок для Bevy, написанный на Rust и представленный отдельными крейтами для 2D (avian2d) и 3D (avian3d). Он напрямую интегрируется с Entity Component System в Bevy: физические объекты — это обычные сущности и компоненты, а не отдельный физический мир, который нужно синхронизировать с игровым.
- avian можно использовать бесплатно? Какая у него лицензия?
- avian распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- avian всё ещё поддерживается?
- Активно поддерживается. Последний коммит в avian — 4 нояб. 2026 г..
- Для чего можно использовать avian?
- Добавление физики твёрдых тел и столкновений в 2D- или 3D-игру на Bevy Создание соединений и ограничений, например шарниров или направляющих, в симуляции на Bevy Выполнение raycast или shapecast для игровых задач, например проверки видимости или траектории снаряда
- Как установить avian?
- Добавьте avian3d в зависимости Cargo.toml (для 2D используйте avian2d).: avian3d = "0.8" Добавьте PhysicsPlugins в приложение Bevy и создавайте физические сущности с помощью RigidBody и Collider.
- Где скачать avian?
- Исходный код и инструкции по установке — на GitHub: https://github.com/avianphysics/avian
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Многопоточная библиотека на C++ для симуляции твёрдых тел и обнаружения столкновений в играх и VR-приложениях.
Godot — бесплатный кроссплатформенный игровой движок с лицензией MIT для создания 2D- и 3D-игр в едином редакторе.
Лёгкий игровой движок с управлением через скрипты для 2D-, 3D-игр от третьего лица и смешанных проектов, рассчитанный на работу со скриптами и AI-инструментами.
2D-движок физики твёрдых тел для веба, написанный на JavaScript и работающий в браузерах и Node.js.
Универсальный физический движок для быстрой и точной симуляции контактирующих сочленённых тел, широко используемый в робототехнике и исследованиях машинного обучения.