No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro kilted. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.
Repository Summary
Description | |
Checkout URI | https://github.com/robotecai/rglgazeboplugin.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-01-07 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
RGLGazeboPlugin | 0.2.0 |
README
RGL Gazebo Plugin
About the project
RGL Gazebo Plugin has been created by Robotec.AI to bring Robotec GPU Lidar to Gazebo.
Key features:
- Point cloud computation using hardware-accelerated raytracing (Nvidia OptiX)
- High performance (~4x improvement over
gpu_lidar
sensor from Gazebo) - Multiple LiDAR pattern configuration methods, including importing a pattern from a binary file
- Realistic presets of the most popular LiDARs
Requirements:
-
OS: Ubuntu 22.04 or Ubuntu 24.04
-
Gazebo: Harmonic
-
GPU: CUDA-enabled
-
Nvidia Driver: See RGL requirements
Installation:
Using pre-built libraries
- Download libraries from release.
- Make RGL plugins visible to Gazebo:
- Move libraries to the plugin’s directories.
- If Gazebo installed from apt:
- Move libraries to the plugin’s directories.
cp libRobotecGPULidar.so /usr/lib/x86_64-linux-gnu/gz-sim-8/plugins
cp libRGLServerPluginInstance.so /usr/lib/x86_64-linux-gnu/gz-sim-8/plugins
cp libRGLServerPluginManager.so /usr/lib/x86_64-linux-gnu/gz-sim-8/plugins
cp libRGLVisualize.so /usr/lib/x86_64-linux-gnu/gz-sim-8/plugins/gui
- If Gazebo installed from the ROS repository ([see](https://gazebosim.org/docs/latest/ros_installation/#installing-the-default-gazebo-ros-pairing)):
cp libRobotecGPULidar.so /opt/ros/${ROS_DISTRO}/opt/gz_sim_vendor/lib/gz-sim-8/plugins
cp libRGLServerPluginInstance.so /opt/ros/${ROS_DISTRO}/opt/gz_sim_vendor/lib/gz-sim-8/plugins
cp libRGLServerPluginManager.so /opt/ros/${ROS_DISTRO}/opt/gz_sim_vendor/lib/gz-sim-8/plugins
cp libRGLVisualize.so /opt/ros/${ROS_DISTRO}/opt/gz_sim_vendor/lib/gz-sim-8/plugins/gui
- Or set environment variables:
# Assuming that system plugin libraries are located in RGLServerPlugin directory,
# and gui plugins (libRGLVisualize.so) in RGLVisualize.
export GZ_SIM_SYSTEM_PLUGIN_PATH=`pwd`/RGLServerPlugin:$GZ_SIM_SYSTEM_PLUGIN_PATH
export GZ_GUI_PLUGIN_PATH=`pwd`/RGLVisualize:$GZ_GUI_PLUGIN_PATH
Building from source
Docker
docker build \
--target=exporter \
--output=install .
Note: Build with ROS Jazzy using colcon
Manual
mkdir build && cd build
cmake .. && make -j && make install
cd ..
# Make it visible to Gazebo via environment variables:
export GZ_SIM_SYSTEM_PLUGIN_PATH=`pwd`/install/RGLServerPlugin:$GZ_SIM_SYSTEM_PLUGIN_PATH
export GZ_GUI_PLUGIN_PATH=`pwd`/install/RGLVisualize:$GZ_GUI_PLUGIN_PATH
Using custom build of RobotecGPULidar
By default, the RGLGazebPlugin
downloads RobotecGPULidar
binaries from the official release. To use your own build of RobotecGPULidar
, set the following CMake variables when configuring the project:
# RGL_CUSTOM_LIBRARY_PATH - Path to the custom RobotecGPULidar library build
# RGL_CUSTOM_API_HEADER_PATH - Path to the include directory with API headers compatible with the custom library build
# (`include` directory of `RobotecGPULidar` project)
# Example:
cmake \
-DRGL_CUSTOM_LIBRARY_PATH="$HOME/RobotecGPULidar/build/lib/libRobotecGPULidar.so" \
-DRGL_CUSTOM_API_HEADER_PATH="$HOME/RobotecGPULidar/include" \
..
Demo:
Launch the prepared simulation from test_world
directory:
gz sim sonoma_with_rgl.sdf
- Start the simulation by pressing play
File truncated at 100 lines see the full file
CONTRIBUTING
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.
No version for distro noetic. Known supported distros are highlighted in the buttons above.