接触状態にある多関節剛体を高速かつ高精度にシミュレーションする汎用物理エンジン。ロボティクスや機械学習の研究で広く使われています。
URLab-Sim/UnrealRoboticsLab
MuJoCoの物理演算をエディターと実行時に動かし、正確な接触ダイナミクスとUnrealのレンダリングを組み合わせるUnreal Engine 5用プラグインです。
- スター
- 564
- フォーク
- 67
- 未解決の Issue
- 9
- 最終コミット
- 26 日前
これは何?
UnrealRoboticsLab (URLab) はMuJoCo物理エンジンをUnreal Engine 5に組み込み、MuJoCoの接触ダイナミクスでロボットをシミュレーションしながら、Unrealのライティング、マテリアル、カメラで描画します。物理演算は専用スレッドで動作し、Unrealがレンダリングを担当します。
MJCFの.xmlモデルをContent Browserにドラッグすると、ジョイント、アクチュエーター、腱、筋肉、flexcompを含む、すぐにシミュレーションできるArticulation Blueprintが生成されます。任意のStatic Meshも、コンポーネントを1つ追加するだけで物理ボディにできます。
ロボットはBlueprint、エディター内のダッシュボード、またはネットワーク経由のPythonやROS 2から制御でき、PDコントローラーと実行中のゲイン調整にも対応します。ロボットのカメラは実際のカメラ内部パラメーターを使ってRGB、深度、セグメンテーションデータを出力でき、エピソードを記録して決定論的に再生できます。
主な機能
- 01MJCFモデルを、すぐにシミュレーションできるArticulation Blueprintとしてインポートします。
- 02MuJoCoの物理演算を専用スレッドで実行し、Unrealのレンダリングと並行して動かします。
- 03Blueprint、エディターのダッシュボード、Python、ROS 2からアクチュエーターを制御します。
- 04ロボットのカメラからRGB、深度、セグメンテーションデータを取得します。
- 05シミュレーションのエピソードを記録し、決定論的に再生します。
- 06アイランド、腱、筋肉、衝突を可視化するデバッグオーバーレイを提供します。
ユースケース
- ビジョントレーニング向けに、フォトリアルなカメラ出力を使ってロボットアームや脚式ロボットをシミュレーションする。
- シミュレーション内のロボットカメラから、ラベル付きのRGB、深度、セグメンテーションデータを生成する。
- Unreal内のMuJoCoモデルを使い、PythonやROS 2でロボット制御ポリシーのプロトタイプを作成する。
- 記録したロボットのエピソードを再生して、デバッグや評価を行う。
クイックスタート
- 1
サブモジュールを含めてプラグインをクローンし、プロジェクトのPluginsフォルダーに配置します
git clone --recurse-submodules https://github.com/URLab-Sim/UnrealRoboticsLab.git - 2
ネイティブ依存関係を一度ビルドします(Windowsではbuild_all.ps1を使用)
./build_all.sh - 3
Unreal EngineのC++プロジェクトをビルドします
使う前に知っておきたいこと
- テストおよびサポート対象はUnreal Engine 5.7のみです。LinuxのVulkanドライバーの回帰があるため、5.8は使用しないでください。
- URLabはC++プラグインのため、プロジェクトはC++プロジェクトである必要があります。
- サポート対象プラットフォームはWindows(Win64)とLinux(x86_64)のみです。
- 同梱の依存関係をビルドするには、CMake 3.24以降とコンパイラー環境が必要です。
収録されている特集
トピック
よくある質問
- UnrealRoboticsLab とは?
- MuJoCoの物理演算をエディターと実行時に動かし、正確な接触ダイナミクスとUnrealのレンダリングを組み合わせるUnreal Engine 5用プラグインです。 UnrealRoboticsLab (URLab) はMuJoCo物理エンジンをUnreal Engine 5に組み込み、MuJoCoの接触ダイナミクスでロボットをシミュレーションしながら、Unrealのライティング、マテリアル、カメラで描画します。物理演算は専用スレッドで動作し、Unrealがレンダリングを担当します。
- UnrealRoboticsLab は無料で使えますか?ライセンスは?
- UnrealRoboticsLab は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- UnrealRoboticsLab は今もメンテナンスされていますか?
- 活発にメンテナンス中。UnrealRoboticsLab の最終コミットは 2026年10月11日 です。
- UnrealRoboticsLab は何に使えますか?
- ビジョントレーニング向けに、フォトリアルなカメラ出力を使ってロボットアームや脚式ロボットをシミュレーションする。 シミュレーション内のロボットカメラから、ラベル付きのRGB、深度、セグメンテーションデータを生成する。 Unreal内のMuJoCoモデルを使い、PythonやROS 2でロボット制御ポリシーのプロトタイプを作成する。 記録したロボットのエピソードを再生して、デバッグや評価を行う。
- UnrealRoboticsLab のインストール方法は?
- サブモジュールを含めてプラグインをクローンし、プロジェクトのPluginsフォルダーに配置します: git clone --recurse-submodules https://github.com/URLab-Sim/UnrealRoboticsLab.git ネイティブ依存関係を一度ビルドします(Windowsではbuild_all.ps1を使用): ./build_all.sh Unreal EngineのC++プロジェクトをビルドします
- UnrealRoboticsLab はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/URLab-Sim/UnrealRoboticsLab
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Franka Emika Pandaアーム向けのROS 2 Humble統合パッケージで、実機とMuJoCoシミュレーションで同じros2_controlコントローラーを動かせます。
Hello Robot Stretch移動マニピュレータ向けのMuJoCoベースのシミュレーションスタック。関節・ベース制御とカメラ・lidarデータに対応。
ロボット、車両、機械システムのモデリング、プログラミング、シミュレーションに対応したオープンソースのロボットシミュレーター。
ドローン、固定翼機、地上車両向けのオープンソースかつエンジン非依存のシミュレーター。Unreal Engine 5による描画にも対応。
Gymnasium APIを基盤とする、MuJoCoベースのロボット強化学習環境コレクション。