8000 GitHub - Ssz990220/RTCollisionDetection: Ray-tracing collision detection library
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Ssz990220/RTCollisionDetection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

RTCollisionDetection

RTCollisionDetection implements high-performance mesh-to-mesh and mesh-to-swept-volume collision detection using NVIDIA OptiX. This package supports both discrete and continuous collision detection for robot motion planning, leveraging GPU ray tracing for scalability and accuracy.

(a) (b) (c) (d)

Ray tracing collision detection methods: discrete-pose collision detection by ray-tracing (a) along obstacle meshes and (b) along robot meshes, and continuous collision detection by ray-tracing against swept sphere-approximated robot volumes (c) piecewise-linear paths or (d) quadratic B-spline paths.


πŸ“š Table of Contents


βœ… TODO

  • Upload source code
  • Add URDF parser
  • Merge RobotToObs and ObsToRobot into a two-way method
  • Upload modified GVDB
  • Enable self-collision detection
  • Integrate Blackwell curve representations

πŸ”§ Features

Mesh-to-Mesh Collision Detection

Obstacle β†’ Robot Robot β†’ Obstacle
Dense Scene Medium Scene Simple Scene

Despite the increased complexity of mesh-to-mesh checks, our methods outperform cuRobo by up to 2.8x in medium and dense scenes.


Mesh-to-Swept-Volume Collision Detection

Dense Scene Medium Scene Simple Scene

Piecewise-linear and B-spline based swept volumes achieve high accuracy. Our discretized methods are fastest for dense scenes, while B-splines offer superior recall.


πŸš€ Setup Instructions

Hardware Requirements

An NVIDIA RTX GPU is required.

Installing Dependencies

We use vcpkg for dependency management:

vcpkg install eigen3 urdfdom urdfdom-headers lz4 benchmark tbb nlohmann-json FLANN gtest imgui glfw3

Additionally, install:

Set environment variables:

  • CUDA_HOME
  • OptiX_ROOT_DIR

Building the Project

mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=$PATH_TO_YOUR_VCPKG/scripts/buildsystems/vcpkg.cmake

πŸ”§ Running Demos

cd build
cmake --build . --target AllDemos --config Release

# Navigate to the demo binaries
cd ./bin/Demos/Release   # On Windows
cd ./bin/Demos           # On Linux

# Run any demo
./demoQuadContinuous.exe

⚠️ Disclaimer

This is research-grade software β€” expect minimal documentation, limited error handling, and rough edges. While efforts have been made to ensure functionality, the code is best suited for academic reference.


πŸ™ Acknowledgements

This project builds on:


πŸ“š Citation

Developed at the Human Centered Robotics Lab (HCRL), UT Austin, in collaboration with Dexterity, Inc.

By Sizhe Sui, advised by Prof. Luis Sentis and Andrew Bylard.

If you use this code, please cite:

[1] S. Sui, L. Sentis, A. Bylard.
Hardware-Accelerated Ray Tracing for Discrete and Continuous Collision Detection on GPUs.
IEEE ICRA 2025
arXiv:2409.09918

About

Ray-tracing collision detection library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0