Robotec GPU Lidar (RGL) is a cross-platform (Windows and Linux), C/C++ library developed by Robotec.AI for simulating LiDARs on CUDA-enabled GPUs, accelerated by RTX cores if available.
One of the use-cases of RGL is implementing Lidar sensors in simulation engines. We are working on integrations with popular game / simulation engines:
If you would like to have a custom integration, feel free to contact us.
Configurable LiDAR pattern and range | High performance |
GPU-accelerated pointcloud processing | Flexible pipeline creation |
And more:
- Asynchronous raytracing
- Removing non-hit points
- Converting to custom binary output
- Downsampling
- Writing to PCD file
Hardware | Requirement |
---|---|
GPU | CUDA-enabled |
Software | Requirement |
---|---|
Nvidia Driver (Linux) | >=460.27.03 |
Nvidia Driver (Windows) | >=472.50 |
An introduction to the RGL API along with an example can be found here.
Two dockerfiles are prepared:
DockerfileMinimal
- image designed to meet RGL minimal requirementsDockerfileLatest
- image with latest Ubuntu and CUDA Toolkit version
Build instructions:
- Set up NVIDIA Container Toolkit
- Download NVidia OptiX 7.2
export OptiX_INSTALL_DIR=<Path to OptiX>
docker build . -f DockerfileMinimal --tag rgl:minimal
docker run --net=host --gpus all -v $(pwd):/code -v ${OptiX_INSTALL_DIR}:/optix -e OptiX_INSTALL_DIR=/optix -e NVIDIA_DRIVER_CAPABILITIES=all -it rgl:minimal /bin/bash
./setup.bash --cmake --make -j
- Install CUDA Toolkit 11.2+.
- Download NVidia OptiX 7.2.
- You may be asked to create Nvidia account to download
- Export environment variable:
export OptiX_INSTALL_DIR=<your-OptiX-path>
.
- Use
setup.bash --cmake --make
script.- It will install dependencies from
apt
and vcpkg. - It will run CMake and then make.
- You can pass optional CMake and make parameters, e.g.
./setup.bash --cmake -DCMAKE_BUILD_TYPE=Debug --make -j 16
- It will install dependencies from
- Install CUDA Toolkit 11.4.4+.
- Download NVidia OptiX 7.2.
- use the default location or set environment variable
OptiX_INSTALL_DIR
- use the default location or set environment variable
- Install PCL 1.12:
- Get vcpkg:
git clone -b 2022.08.15 --single-branch --depth 1 https://github.com/microsoft/vcpkg
- Bootstrap
vcpkg
:
.\vcpkg\bootstrap-vcpkg.bat
- Install PCL:
.\vcpkg\vcpkg.exe install pcl[core,visualization]:x64-windows
- In order to use vcpkg with Visual Studio, run the following command (may require administrator elevation):
.\vcpkg\vcpkg.exe integrate install
- In order to use vcpkg with CMake, you can use the toolchain file:
cmake -B [build directory] -S . "-DCMAKE_TOOLCHAIN_FILE=[path to vcpkg]/scripts/buildsystems/vcpkg.cmake"
cmake --build [build directory]
- Get vcpkg:
- Build the project:
The development of this project was made possible thanks to cooperation with Tier IV - challenging needs in terms of features and performance of Tier IV's project allowed to significantly enrich Robotec GPU Lidar with features such as Gaussian noise and animated meshes as well as optimize it to provide real-time performance with many lidars.