Reachy 2 Digital Twin based on Unity 2022.
The Unity package provides a virtual replica of the robot that mirrors its movements based on externally computed commands. It is designed for simulating Human-Robot Interaction (HRI) in XR applications without needing the physical robot.
Use this package to:
- Prototype XR interactions with a realistic robot model.
- Test HRI scenarios remotely or at scale.
- Create immersive demos where the robot appears to be present in the real world.
This package requires Reachy 2's core stack to be running, either on a real robot or through the standalone Docker image.
Check what you need to install:
If you have a Reachy 2 robot
There's nothing to install — everything is already set up on the robot!You can use the robot in fake mode to move the digital twin without moving the physical robot.
If you do not have a robot
To set up the core stack on your machine, you can:- follow the online Reachy 2 Simulation Installation Guide
OR - go directly to the Reachy 2 Docker Image on Docker Hub for setup instructions.
-
Download the Unity package from the releases.
-
Create a new 3D Unity project (or open an existing one), and set up your project and cameras based on the type of application you are targeting (VR, AR, etc.).
-
Download the grpc_unity_package from the gRPC daily builds.
Unzip it in your Unity projectAssets
folder. -
In Unity, go to
Assets > Import Package > Custom Package...
and import the downloadedreachy2-digital-twin.unitypackage
.
You should now see aReachy2
folder inside yourAssets
directory. -
Drag and drop
Reachy2
andReachy2DataClient
prefabs fromAssets/Reachy2/Prefabs
into your scene.
- In the Scene Hierarchy, select the
Reachy2
object.
In the Inspector, find theReachy2DataMessageManager
script and assign theReachy2DataClient
GameObject to itsDataMessageManager
field (by dragging it from the hierarchy).
- Select the
Reachy2DataClient
GameObject in the hierarchy and set the IP address in the Inspector.
This IP must match the machine where thereachy2-core
stack is running. If you are using a Reachy 2 robot, then set the IP address of your robot.
Use
"localhost"
only if your Unity application and the core stack are running on the same machine.
-
Make sure
reachy2-core
stack is running. -
Click Play in Unity or build your application.
Then start sending commands toreachy2-core
using the Python SDK, the digital twin will do the same!
⚠️ The Unity digital twin only mirrors the robot's movements.
Ensure that your Python SDK connects to the same IP address as the one set inReachy2DataClient
.