ゲームやVR向けの、マルチコア環境に適したC++剛体物理・衝突検出ライブラリ。
dimforge/rapier
ゲーム、アニメーション、ロボティクス向けのRust製2D・3D物理エンジン。C、Python、JavaScript、Bevyバインディングを提供。
- スター
- 6,039
- フォーク
- 432
- 未解決の Issue
- 93
- 最終コミット
- 6 日前
これは何?
Rapierは、Dimforge組織がRustで開発する2D・3D物理エンジン群です。rapier2d、rapier3d、およびそれぞれのf64版クレートとして公開されており、ゲーム、アニメーション、ロボティクスでの利用を想定しています。
parallel featureを有効にすると、物理演算のステップ処理をマルチスレッドで実行できます。また、SIMDによるバッチ処理を使った拘束条件ソルバーと接触処理がデフォルトで有効です。ソフトボディ機能はCバインディングで利用でき、f32とf64の両方で2D・3D APIが提供されています。
Rust以外の環境でも利用できるよう、C ABIとC++用ヘルパー、32ビット浮動小数点数で3DエンジンをラップするPythonパッケージ、TypeScript/JavaScriptパッケージ、Bevyプラグインを提供しています。各言語向けのサンプルとユーザーガイドのコードは、リポジトリで管理されています。
主な機能
- 01f32版とf64版を備えた、独立した2D・3Dエンジンを提供します。
- 02parallel featureを使って、物理演算のステップ処理をマルチスレッド化できます。
- 03SIMDによるバッチ処理を使った拘束条件ソルバーと接触処理がデフォルトで有効です。
- 04C、Python、JavaScript/TypeScript、Bevy向けのバインディングを備えています。
- 05コンパイルおよびテストされるサンプルとユーザーガイドのコードを提供します。
ユースケース
- Rust製の2Dまたは3Dゲームに剛体物理を追加する。
- ロボティクスプロジェクトでロボットや機械の動力学をシミュレーションする。
- 公式プラグインを使って、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 バインディングが対応しているのは、32 ビット浮動小数点数を使用する 3D エンジンのみです。
収録されている特集
トピック
よくある質問
- rapier とは?
- ゲーム、アニメーション、ロボティクス向けのRust製2D・3D物理エンジン。C、Python、JavaScript、Bevyバインディングを提供。 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
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Bullet Physics SDKは、ゲーム、VR、ロボティクス、機械学習で使われる、リアルタイム衝突検出とマルチフィジックスシミュレーション向けのC++ライブラリです。
Rust製のBevyゲームエンジン向けに特化した、ECS駆動の2D・3D物理エンジン。
関節ロボットやアニメーションキャラクターの運動学・動力学・接触シミュレーションに対応した、Pythonバインディング付きのC++17物理ライブラリ。
接触状態にある多関節剛体を高速かつ高精度にシミュレーションする汎用物理エンジン。ロボティクスや機械学習の研究で広く使われています。
物理演算、3Dレンダリング、センサーモデル、GUIを備えたオープンソースのロボットシミュレーター。Gazeboの最新バージョン。