dimforge/rapier · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈
Rust 编程语言的 2D 和 3D 物理引擎 。
什么是 Rapier?
Rapier 是一套用于游戏、动画和机器人的 2D 和 3D 物理引擎。这些 crate
是 rapier2d、rapier3d、rapier2d-f64 和 rapier3d-f64。它们使用 Rust
编程语言编写,由 Dimforge 组织开发。它永久免费
且开源!
入门指南
开始使用 Rapier 最简单的方法是:
- 阅读 用户指南。
- 尝试示例:
cargo run --release --bin all_examples2和cargo run --release --bin all_examples3。 它们的源代码位于examples2d/和examples3d/目录中。 - 不要犹豫,在 Discord 上寻求帮助,或在 GitHub 上提交 issue。
性能
SIMD 批量约束求解和接触处理始终开启: 求解器每条指令处理 4 个接触流形,在没有 SIMD 支持的目标上回退到标量 代码。对于性能敏感的应用, 也请启用:
parallel— 通过 rayon 对整个物理步骤(宽相、 窄相、求解器)进行多线程处理。在具有异构核心的 CPU 上 (Apple silicon、Intel hybrid),还请调用PhysicsPipeline::set_dedicated_thread_pool(None)以在仅包含性能核心的 线程池上运行该步骤:否则,求解器的屏障同步阶段 将以最慢(效率)核心的速度运行。
rapier3d = { version = "*", features = ["parallel"] }
Python 绑定
Python 绑定正在开发中。它们以四个 PyPI 包的形式发布——
rapier2d、rapier3d、rapier2d-f64、rapier3d-f64——每种
(维度,标量)风味各一个。请参阅 python/README.md 了解
如何从检出构建绑定、文档和测试环境,以及
python/docs/ 查看 API 文档。
AI 编码免责声明与政策
AI 编码被广泛用于以下 crate 的实现和维护:mjcf-rs、
rapier3d-mjcf,以及 Python 绑定(python/rapier-py*),包括其测试、示例和文档。
我们积极使用 AI 辅助(配合人工审查)执行以下任务:
- 文档生成。
- 变更日志生成。
- 测试生成。
- CI 配置和脚本。
我们接受涉及 AI 编码的贡献,只要:
- 它们经过人工验证可正常工作。
- 代码质量达到人工编写代码的标准。
- 在适用情况下包含非回归测试(其本身可以由 AI 生成)。