facebookresearch/project_superdex

SuperDex brings together a purpose-built physics engine, robotics authoring tools, and a scalable reinforcement learning interface in a unified simulation platform, with VR-based teleoperation and additional capabilities planned for future releases.

Project SuperDex – A Simulation Platform for Dexterous Manipulation

What it is – Project SuperDex is a research‑focused simulation suite that brings together a contact‑rich physics engine, a robotics SDK, a visual authoring tool, and a reinforcement‑learning interface. It is designed for studying and developing algorithms for dexterous, tactile manipulation, including RL, model‑predictive control, and system identification.

Core components

  • SuperDex Physics – a “contact‑first” engine that prioritises stable contacts and accurate force/torque sensing, essential for simulating fine manipulation.
  • SuperDex Robotics – defines robots (kinematics, sensors, actuators) and lets you compose them into complete simulation configurations.
  • SuperDex Studio – a lightweight desktop GUI for turning CAD models and robot descriptions into native SuperDex assets (bots, prefabs, scenes) and visualising them.
  • SuperDex Lab – a Gymnasium‑style Python API that exposes the simulation as an MDP, enabling reinforcement‑learning, MPC, and system‑ID experiments.
  • SuperDex Teleop (planned for Q4 2026) – an Unreal‑Engine‑5‑based virtual‑reality teleoperation module that runs natively on Quest 3 with low‑latency C++ code.

Why it matters – Dexterous manipulation remains a hard problem for robotics and embodied AI. Existing simulators often struggle with stable contact handling or lack tight integration with learning pipelines. SuperDex aims to fill that gap by offering:

  • Precise contact dynamics suitable for tactile tasks.
  • End‑to‑end Python bindings so researchers can prototype policies directly from Python while the heavy lifting runs in optimized C++.
  • A visual authoring workflow (Studio) that speeds up creating new robots, objects, and task scenes.
  • A clear RL interface (Gymnasium‑style) that lets you plug in any RL library.

Getting started (Python)

  1. Install the helper tool uv and the required system libraries (OpenGL 4.1, X11 on Linux, Xcode tools on macOS, or MSVC + Clang on Windows).
  2. Clone the stable branch of the repo.
  3. Inside the source directory:
    uv venv                     # create a virtual environment
    uv pip install superdex    # install the pre‑built wheels (Python 3.12 only for now)
    
  4. Run the provided examples, e.g.:
    uv run --no-project superdex_physics/examples/example_tendon_comparison.py
    uv run --no-project superdex_robotics/examples/control/example_osc_jsc_control.py
    uv run --no-project superdex-studio   # launch the GUI authoring tool
    
    Set SUPERDEX_PRECISION=double to switch to double‑precision calculations if needed.

Building from source – If you need custom builds (e.g., double‑precision, extra GUI tools, or C++‑only libraries), the README provides a step‑by‑step CMake/Ninja workflow. The project prefers Clang ≥ 17 (or Clang 22 on Linux) but can be compiled with other compilers at your own risk.

Documentation & resources – Detailed docs for each module are hosted on the project website:

  • Physics: projectsuperdex.com/physics/docs/overview/
  • Robotics: projectsuperdex.com/robotics/docs/overview/
  • Studio: projectsuperdex.com/studio/docs/overview/
  • Lab: projectsuperdex.com/lab/docs/overview/

License – The core code is Apache 2.0. Assets and documentation are CC‑BY‑4.0, with some optional tools (e.g., superdex_mesh_cli) under GPL 3.0 due to third‑party dependencies.

Citation – If you publish work that uses SuperDex, cite the provided arXiv‑style reference.


Project SuperDex is a genuine, research‑grade robotics simulation platform aimed at AI and machine‑learning practitioners working on dexterous manipulation.

Related

  • Project
  • Project
  • Project
  • Project
  • Project