- Heavily refactored
- Uses system installed ROS2 instead of included binaries
- Uses Unreal Engine memory allocator
- Reworked messages so the fields are accessible via Blueprints.
- Added thread safety to
rclcalls. - Remove Node and publisher initialisation complexity from Blueprints.
- Ubuntu 24.04
- Unreal Engine 5.7 (This repo aims to track latest release version of the engine)
- ROS2 Jazzy with patched
rcutils(https://github.com/Greenroom-Robotics/rclue-rcutils) andrclc_parameter.
Follow Epic documentation on checking out and compiling Unreal Engine source code.
ros_coreexample_interfacestf2_msgsgeographic_msgsrcutils(with rclUE patch)rclc_parameter(with PIC patch)
- Clone this repository in your project's
Pluginsfolder - Create a shell script in the root Project folder to launch the Unreal Engine editor (substituting
UNREAL_HOME,PROJECTS_HOME,ROS2_ENVandPROJECT_NAMEfor the appropriate paths):
#!/bin/bash
UNREAL_HOME="/home/${USER}/UnrealEngine"
PROJECTS_HOME="/home/${USER}/Documents/Unreal Projects"
PROJECT_NAME="MyProject"
ROS2_ENV="/opt/ros/jazzy"
EDITOR_COMMAND="${UNREAL_HOME}/Engine/Binaries/Linux/UnrealEditor"
source ${ROS2_ENV}/setup.bash
(exec "$EDITOR_COMMAND" "${PROJECTS_HOME}/${PROJECT_NAME}/${PROJECT_NAME}.uproject")- Within the Unreal Editor: Edit->Plugins, enable for
rclUE - Change the world settings to use meters as units instead of the default centimeters
TBD