Unity-Technologies/Unity-Robotics-Hub
Central repository for tools, tutorials, resources, and documentation for robotics simulation in Unity.
Unity‑Robotics‑Hub – Simulation Pro
What it is – A Unity‑provided collection of packages, tutorials, and sample assets that turn the Unity game engine into a full‑featured robotics simulation platform. The centerpiece is Simulation Pro, a Unity package that lets you import robot models, simulate sensors, and exchange ROS 2 messages directly from a Unity scene.
Key capabilities
- URDF importer – Drag‑and‑drop URDF files (the standard robot description format) into Unity and get a ready‑to‑use robot hierarchy.
- Sensor simulation – Built‑in Lidar, RGB‑D cameras and IMU that produce realistic point clouds, images and inertial data.
- ROS‑2 bridge – Publish and subscribe to ROS 2 topics from C# scripts, enabling a live connection to external ROS 2 nodes.
- Headless Linux builds – Run Unity simulations on a server without a graphics UI, allowing parallel, high‑throughput experiments.
What you get out of the box
- Sample Unity projects (e.g., a Panda arm, an AMR robot) that demonstrate each feature.
- A five‑module, 5‑hour training course (written docs plus video on Unity Academy) that walks you through importing a robot, wiring ROS 2 messages, configuring sensors, building a complete simulation, and exporting data such as images, point clouds and CSV logs.
- Documentation files (
docs/*.md) that explain concepts, give step‑by‑step procedures, and provide checkpoints to verify each stage.
Typical workflow
- Install Unity 6.3+ and add the Simulation Pro package via the Unity Package Manager.
- Use the URDF importer to bring a robot (e.g., the provided Panda arm) into a Unity scene.
- Add the supplied sensor prefabs (LiDAR, camera, IMU) and configure their parameters.
- Enable the ROS‑2 endpoint connector to link the Unity simulation with a ROS 2 environment running on another machine (Ubuntu 26.04 with ROS 2 Lyrical is the reference setup).
- Run a Python
rclpynode that commands the robot using the simulated sensor data. - Capture simulation output (images, point clouds, logs) for analysis or machine‑learning training.
Who should use it
- Robotics developers who want a visual, physics‑accurate testbed before deploying code to real hardware.
- Researchers needing large‑scale, headless simulations for data generation (e.g., training perception models).
- Engineers familiar with Unity and C# but new to ROS 2; the course assumes only Unity basics.
Getting started
- Clone the repository.
- Open Unity, create a new project (Unity 6.3+), and add Simulation Pro through the Package Manager.
- Follow the first module (
docs/M1-Introduction.md) to import the Panda URDF and verify the scene. - Continue through modules 2‑5 to add ROS 2 messaging, sensors, a live ROS 2 connection, and data capture.
- For ROS 2 setup, refer to the official ROS 2 Lyrical documentation – the hub does not install ROS for you.
Support & community
- Questions: Unity Robotics forum thread linked in the README.
- Bugs/feature requests: GitHub issues using the provided templates.
License – Apache 2.0 (permissive, allowing commercial use with attribution).
All details are taken directly from the repository’s README; no additional features are inferred.
Related
- Project
- Project
- Project
- Project