OpenLegged/URDF-Studio

URDF-Studio is a web-based visual URDF robot modeler with 3D workspace, structured skeleton/detail/hardware workflows, motor library integration, MuJoCo export, and AI assistance.

URDF Studio – ブラウザベースのロボット作成&AIアシスタント

概要 – ロボット記述ファイル(URDF、MJCF、USD、SDF、Xacroなど)を作成、編集、可視化、エクスポートするためのWebアプリケーションです。フル機能の3Dエディタ、ReactベースのUI、再利用可能なRobotCanvasコンポーネント、そして自然言語プロンプトからロボットモデルを生成・検査し、PDF/CSVレポートを作成できるオプションのAIアシスタントが統合されています。


主な機能

エリア できること
トポロジー編集 運動学ツリーの構築、リンクとジョイントの追加/削除、親子関係の編集。
幾何学・衝突判定 ビジュアルメッシュのインポートや作成、衝突メッシュの作成、最適化パスの実行、シーン内での計測。
ハードウェア構成 モーター仕様、減速比、減衰、摩擦、その他のロボットハードウェアメタデータの設定。
マルチロボットアセンブリ 単一のワークスペース内で複数のロボット定義を組み合わせ、ブリッジジョイントを作成し、コンポーネントライブラリを管理。
リッチな3Dビュー トランスフォーム制御、ヘルパーオーバーレイ、スナップショットキャプチャを備えたReact-Three-Fiberキャンバス。URDF、MJCF、USD(WASM USDビルド経由)のランタイムビューア。
インポート / エクスポート 単一ファイル、フォルダ、ZIPバンドル、または独自の.uspプロジェクト形式の読み込み。URDF、MJCF、USD、SDF、Xacro、CSV/BOM、PDF、ZIPなどへのエクスポート。
AIアシスタント (オプション) テキスト記述からのロボット生成、構成可能な基準に基づいた自動検査の実行、最適化提案の取得、PDF/CSVレポートのエクスポート。
Workerベースのパイプライン 重いインポート/エクスポート作業(USDハイドレーション、バイナリアーカイブ変換など)をweb-workersで実行し、UIの応答性を維持。
再利用可能なライブラリ @urdf-studio/react-robot-canvasパッケージにより、他のReactアプリにStudioのフルUIなしで同じビューアを埋め込み可能。

技術スタック (リポジトリ記載)

  • フロントエンド: React 19, TypeScript 5, Vite 6
  • 3D: Three.js 0.181, React-Three-Fiber, @react-three/drei
  • 状態管理: Zustand
  • スタイリング: Tailwind CSS
  • 解析 / エクスポート: URDF, MJCF, USD, Xacro, SDF, メッシュ圧縮, STL処理などのためのカスタム純粋関数パーサー。
  • パッケージング: JSZip, jsPDF, libarchive.js
  • AI: OpenAI SDK (Geminiへのフォールバック) と生成・検査用プロンプトテンプレート
  • WASM: WebAssemblyにコンパイルされたUSDランタイム(クロスオリジン分離ヘッダーが必要)

標準的なワークフロー

  1. アプリの起動 (npm run dev) を行い、ローカルURLを開く。
  2. ロボットファイル (URDF, MJCF, USDなど) を 作成またはインポート する。
  3. エディタタブ を使用して、トポロジー、幾何学、ハードウェアパラメータを修正する。
  4. 3Dキャンバス で変更を即座に可視化し、スナップショットをキャプチャまたはシーンをエクスポートする。
  5. (オプション) AIに依頼 して説明から新しいロボットを生成したり、検査を実行したりし、生成されたPDF/CSVレポートをダウンロードする。
  6. 最終モデルをサポートされている任意のフォーマットで エクスポート するか、ワークスペース全体を.uspアーカイブとして保存して後で再利用する。

はじめに (READMEのクイックスタート)

# clone and install
git clone https://github.com/OpenLegged/URDF-Studio.git
cd URDF-Studio
npm install

# run the development server
npm run dev   # opens http://127.0.0.1:3000
  • AI機能を有効にするには、.env.localファイルでOPENAI_API_KEY (またはGEMINI_API_KEY)を設定してください。
  • LAN上でUSDを読み込むには、WASMランタイムがSharedArrayBufferを使用するため、セキュアなコンテキスト(HTTPSまたはChromeのtrusted-originフラグ)が必要です。

想定ユーザー

  • ロボット研究者・エンジニア: XMLを手動編集することなく、URDF/MJCFモデルを迅速かつ視覚的にプロトタイプしたい方。
  • 教育者・学生: ロボットの運動学や衝突テストのためのインタラクティブな遊び場を求めている方。
  • シミュレーションパイプライン開発者: フォーマット変換 (URDF ↔ MJCF ↔ USD ↔ SDF) やプログラムによるアセット生成が必要な方。
  • プロダクトチーム: Webベースのロボット可視化ツールを構築中で、react-robot-canvasコンポーネントを直接埋め込みたい方。
  • AI活用設計チーム: 自然言語からロボットのコンセプトを生成することに興味がある方。

ライセンスと謝辞

  • Apache 2.0 ライセンスの下で提供されています。
  • D-Robotics によってサポートされています。

上記の情報はすべてリポジトリのREADMEから直接引用したものであり、追加機能は推測されていません。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト