Многопоточная библиотека на C++ для симуляции твёрдых тел и обнаружения столкновений в играх и VR-приложениях.
dimforge/rapier
Физические движки на Rust для 2D и 3D, предназначенные для игр, анимации и робототехники; доступны привязки для C, Python, JavaScript и Bevy.
- Звёзды
- 6,032
- Форки
- 430
- Открытые issues
- 93
- Последний коммит
- 5 дней назад
Что это?
Rapier — набор физических движков для 2D и 3D, написанных на Rust организацией Dimforge. Движки публикуются в виде crate rapier2d и rapier3d, а также их вариантов с f64 и предназначены для игр, анимации и робототехники.
Движок поддерживает многопоточную обработку физики благодаря feature parallel; пакетная обработка ограничений и контактов с использованием SIMD включена по умолчанию. Поддержка мягких тел реализована в C-привязках, которые предоставляют API для 2D и 3D с типами f32 и f64.
Привязки позволяют использовать движок не только из Rust: доступны C ABI с помощниками для C++, Python-пакет-обёртка для 3D-движка с 32-битными числами с плавающей точкой, пакеты для TypeScript/JavaScript и плагин для Bevy. В репозитории есть примеры и фрагменты руководства для каждого языка.
Ключевые возможности
- 01Предоставляет отдельные движки для 2D и 3D, каждый — в вариантах f32 и f64.
- 02Поддерживает опциональную многопоточную обработку физики через feature parallel.
- 03По умолчанию использует пакетную обработку ограничений и контактов с помощью SIMD.
- 04Включает привязки для C, Python, JavaScript/TypeScript и Bevy.
- 05Содержит примеры и код из руководства, которые компилируются и проходят тесты.
Сценарии использования
- Добавление физики твёрдых тел в 2D- или 3D-игру на Rust.
- Моделирование динамики роботов или механизмов в проектах по робототехнике.
- Использование физики в игре на Bevy через официальный плагин.
- Вызов нативного физического движка из кода на C, C++ или Python.
Быстрый старт
- 1
Прочитайте руководства пользователя на rapier.rs/docs
- 2
Запустите примеры для 2D
cargo run --release --bin all_examples2 - 3
Запустите примеры для 3D
cargo run --release --bin all_examples3
Что важно знать
- Для сборки и использования движка необходима инструментальная цепочка Rust.
- Привязки Python поддерживают только 3D-движок с 32-битными числами с плавающей точкой.
В подборках
Темы
Частые вопросы
- Что такое rapier?
- Физические движки на Rust для 2D и 3D, предназначенные для игр, анимации и робототехники; доступны привязки для C, Python, JavaScript и Bevy. Rapier — набор физических движков для 2D и 3D, написанных на Rust организацией Dimforge. Движки публикуются в виде crate rapier2d и rapier3d, а также их вариантов с f64 и предназначены для игр, анимации и робототехники.
- rapier можно использовать бесплатно? Какая у него лицензия?
- rapier распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- rapier всё ещё поддерживается?
- Активно поддерживается. Последний коммит в rapier — 1 нояб. 2026 г..
- Для чего можно использовать rapier?
- Добавление физики твёрдых тел в 2D- или 3D-игру на Rust. Моделирование динамики роботов или механизмов в проектах по робототехнике. Использование физики в игре на Bevy через официальный плагин. Вызов нативного физического движка из кода на C, C++ или Python.
- Как установить rapier?
- Прочитайте руководства пользователя на rapier.rs/docs Запустите примеры для 2D: cargo run --release --bin all_examples2 Запустите примеры для 3D: cargo run --release --bin all_examples3
- Где скачать rapier?
- Исходный код и инструкции по установке — на GitHub: https://github.com/dimforge/rapier
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Bullet Physics SDK — библиотека C++ для обнаружения столкновений и мультифизического моделирования в реальном времени, используемая в играх, VR, робототехнике и машинном обучении.
Физический движок для 2D и 3D на ECS, созданный специально для игрового движка Bevy на Rust.
Физическая библиотека на C++17 с привязками Python для расчёта кинематики, динамики и контактов у сочленённых роботов и анимированных персонажей.
Универсальный физический движок для быстрой и точной симуляции контактирующих сочленённых тел, широко используемый в робототехнике и исследованиях машинного обучения.
Открытый симулятор робототехники с физикой, 3D-рендерингом, моделями датчиков и графическим интерфейсом — актуальная версия Gazebo.