Optimized Continuous Collision Detection for Deformable Triangle Meshes
Optimized Continuous Collision Detection for Deformable Triangle Meshes Marco Hutter and Arnulph Fuhrmann WCSG’ 2007 – 30 January, 2007 – Plzen, Czech Republic
Overview n Introduction n Problem description n Optimizations ¨ ¨ ¨ n Primitive Bounding Volumes Optimized Continuous Collision Tests Modification Marking Conclusions & Discussion 2
Introduction n Collision Detection ¨ n Deformable Triangle Meshes ¨ n Surfaces representing clothing & virtual garments Multiple layers ¨ n Physically based simulation Many collisions have to be resolved Interactive simulation ¨ Requires robustness and efficiency 3
Problem description n Collision detection ¨ ¨ n Robust continuous collision detection [Govindaraju 05] ¨ n Bounding Volume Hierarchies [Klosowski 98], [Larsson 01] Exact collision tests between primitives in leaves Computing the time when the collisions occur [Provot 97] Physical correctness ¨ Treat collisions in correct (chronological) order [Bridson 02] 4
Optimizations n n Bounding Volume Hierarchies ¨ Bounding Volumes usually for triangles ¨ Two triangles: 9 edge/edge tests, 6 triangle/vertex tests For objects in close proximity ¨ ¨ Each triangle tested against 6 other triangles 90 expensive collision tests Many „false positives“ 5
Optimizations n Optimization: ¨ Additional bounding volumes for edges and vertices ¨ Slight memory overhead Significantly reduces number of “false positives” ¨ 6
Optimizations n Continuous collision tests ¨ ¨ Computing the time when the collision occurs Edge-edge Triangle-vertex Checking 4 points for coplanarity s Compute coefficients and roots of 3 rd degree polynomial from positions and velocities 7
Optimizations n Continuous collision tests ¨ n Computationally expensive Optimized formula: 8
Optimizations n Iterative scheme for treating the collisions ¨ ¨ n Correct chonological order Take secondary collisions into account: Optimization: ¨ ¨ Marking the modified parts of the BVH in each iteration Update and traverse only the marked parts 9
Conclusions n Additional bounding volumes for primitives ¨ ¨ ¨ n Optimized continuous collision tests ¨ n Fewer false positives less collision tests Speedup of about 2, 5 to 3 Easily applicable for all BVH-based algorithms Small part of the total time, but saves many FLOPS Marking the modified parts of the BVH ¨ ¨ Much more efficient than complete update and traversal Collision detection time less depends on number of primitives 10
Questions? Comments?
- Slides: 12