This project implements a virtual model of a LeoRover in Unreal Engine 5 and enables communication via ROS 2.
This project is tesed under the following conditions:
- Ubutnu 22.04
- Unreal Engine 5.2.x
- ROS 2 Humble (binary install)
You can download pre-compiled UE5 for linux here. After unzipping the downloaded file, set the environment variable for the UE5 root directory.
export UE5_ROOT=</path/to/ue5/root>
Clone this repo.
git clone https://github.com/metabotics-ai/LeoRoverUE5.git
See this for installing ROS 2 Humble.
This project depends on the following plugins for interfacing with ROS 2.
You should download 'RapyutaSimulationPlugins' and 'rclUE' plugins for this project. You can simply import these plugin using 'leorover.repos' file via vcstool as below:
vcs import < leorover.repos
We are providing three scripts for compile and run this project. First, generate the 'Makefile' from 'uproject' file:
./update_project_files.sh
Then compile the project:
./make_editor.sh
Finally, the following command run the Unreal Editor:
./run_editor.sh
Note: 'cleanup.sh' is a convenient script for deleting project files.
./cleanup.sh
ROS Topic | Interface |
---|---|
/image_raw |
sensor_msgs/Image |
/odom |
nav_msgs/Odometry |
/clock |
rosgraph_msgs/Clock |
ROS Topic | Interface |
---|---|
/cmd_vel |
geometry_msgs/Twist |