Repolode
dimforge

dimforge/rapier

基于 Rust 的 2D 与 3D 物理引擎,适用于游戏、动画和机器人,提供 C、Python 等绑定。

Star
6,039
Fork
432
未关闭 Issue
93
最近提交
6天前

这是什么?

Rapier 是由 Dimforge 组织用 Rust 编写的 2D 和 3D 物理引擎,发布为 rapier2d、rapier3d 及其 f64 版本,面向游戏、动画和机器人等场景。

引擎提供 parallel 特性,可通过 rayon 对整个物理步进进行多线程计算;约束求解和接触处理默认采用 SIMD 批处理。C 绑定覆盖 2D 与 3D、f32 与 f64 的接口,并包含软体支持。

除 Rust 外,项目还提供 C ABI 及 C++ 辅助封装、仅含 3D 引擎的 Python 包(32 位浮点)、TypeScript/JavaScript 包以及 Bevy 插件,每种语言都附有示例和用户指南代码片段。

核心功能

  • 01提供独立的 2D 和 3D 引擎,各自支持 f32 与 f64 版本。
  • 02通过 parallel 特性可选启用整个物理步进的多线程计算。
  • 03约束求解和接触处理默认采用 SIMD 批处理。
  • 04提供 C、Python、JavaScript/TypeScript 和 Bevy 绑定。
  • 05附带示例和用户指南代码,并会编译验证。

适用场景

  • 为用 Rust 编写的 2D 或 3D 游戏添加刚体物理。
  • 在机器人项目中模拟机械运动和动力学。
  • 在 Bevy 游戏中通过官方插件使用物理引擎。
  • 在 C、C++ 或 Python 程序中调用原生物理引擎。

快速上手

  1. 1

    阅读 rapier.rs/docs 上的用户指南

  2. 2

    运行 2D 示例

    cargo run --release --bin all_examples2
  3. 3

    运行 3D 示例

    cargo run --release --bin all_examples3

使用前须知

  • 需要 Rust 工具链才能构建和使用该引擎。
  • Python 绑定仅提供使用 32 位浮点数的 3D 引擎。

收录于专题

标签

常见问题

rapier 是什么?
基于 Rust 的 2D 与 3D 物理引擎,适用于游戏、动画和机器人,提供 C、Python 等绑定。 Rapier 是由 Dimforge 组织用 Rust 编写的 2D 和 3D 物理引擎,发布为 rapier2d、rapier3d 及其 f64 版本,面向游戏、动画和机器人等场景。
rapier 可以免费使用吗?用的什么许可证?
rapier 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
rapier 还在维护吗?
活跃维护中。rapier 最近一次提交是在 2026年11月1日。
rapier 适合用来做什么?
为用 Rust 编写的 2D 或 3D 游戏添加刚体物理。 在机器人项目中模拟机械运动和动力学。 在 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

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目