UE Project which includes examples to use rclUE.
devel
: Main branch. Compatible with Unreal Engine 5.1 with Ubuntu 20.04jammy
: Compatible with Unreal Engine 5.1 with Ubuntu 22.04UE4
: Compatible with Unreal Engine 4.27ROS2TopicExamples
: BP and C++ ROS2 example nodes of publisher/subscriber.ROS2ServiceExamples
: BP and C++ ROS2 example nodes of service server/client.ROS2ActionExamples
: BP and C++ ROS2 example nodes of action server/clientTurtlebot3 Benchmark
: BP and C++ ROS2 turtlebot3 navigation. Burger is implemented in C++ and Waffle is implemented in BP.RobotArmExample
: Robot arm example which can be controlled from sensor_msgs/JointStates. This map has SimpleArim, KinematicUR10 and PhysicsUR10.PandaArmExample
: Panda Arm example which can be controlled from moveit2PandaArmPhysicsExample
: Physics Panda Arm example which can be controlled from moveit2Entry
: Get map name from command line and transition to that maps. Mainly used to packaged project to change initial map.LargeGround
: Large enough map for simulating many robots. Mainly used to test distributed multi-robot simulation.Turtlebot3AutoTest
: Maps for Automated test.git clone --recurse-submodules git@github.com:rapyuta-robotics/turtlebot3-UE.git
git-lfs pull && git submodule foreach git-lfs pull
cd turtlebot3-UE
export UE5_DIR=<path to UE5>
./update_project_files.sh
make turtlebot3Editor
./run_editor.sh <false or true to use dds server or not> $(pwd) <ue_exe>
* Since the prooject is set to use
ROS2 with Discovery Server
to communicate with ROS2 Node in UE, you needs to execute source turtlebot3_UE/fastdds_setup.sh
. You can run without server by ./run_editor.sh false
Please install pre-commit before commiting your changes. Follow this instruction https://pre-commit.com/
then run
./setup_pre_commit.sh
this will setup pre-commit to all submodules as well.
Plugins/rclUE
to UE5_devel_humble
branch.cd turtlebot3-UE && source fastdds_setup.sh
#if you use ROS2 Discovery Server. You don't need this if you start editor with ./run_editor false
.ros2 launch nav2_bringup tb3_simulation_launch.py use_simulator:=False map:=<path to turtlebot3-UE>/Content/Turtlebot3_benchmark.yaml
!NOTE: The test script is setup to run with fastdds, which requires UE to start before ROS is enabled, thus /opt/ros/<ros_distro>/setup.bash
, which is already run in the script, needs to be not added to ~/.bashrc
./ExternalTest/run_local_sim_tb3_tests.sh <ue_exe> <ue_map> <tb3_model> <tb3_name> <tb3_init_pos> <tb3_init_rot>
with:
<ue_exe>
: path to the UE editor executor, eg: ~/UE/UnrealEngine/Engine/Binaries/Linux/UE4Editor
<ue_map>
: ue map name, eg: Turtlebot3AutoTest
<tb3_model>
: burger
or waffle
<tb3_name>
as the robot given names, eg: burger0
<tb3_init_pos>
as the robot initial position (x,y,z), eg: 0.0,0.0,0.1
<tb3_init_rot>
as the robot initial rotation (r,p,y), eg: 0.0,0.0,0.0