FASTCD FracturingAware Stable Collision Detection JaePil Heo 1
FASTCD: Fracturing-Aware Stable Collision Detection Jae-Pil Heo 1, Joon-Kyung Seong 1, Duksu Kim 1, Miguel A. Otaduy 2, Jeong-Mo Hong 3, Min Tang 4, and Sung-Eui Yoon 1 1 KAIST, 2 URJC Madrid, 3 Dongguk Univ, 4 Zhejiang Univ. http: //sglab. kaist. ac. kr/FASTCD
Collision Detection (CD) ● Collision detection is an essential part of various applications ● Physically-based simulation ● Games ● Robotics cloth simulation 2 Quake 4 KAIST Hubo
Inter- and Self- Collisions ● Inter-collisions ● Collisions between two objects ● Self-collisions (intra-collisions) ● Collisions between different parts of one object ● Takes much longer computation time (~100 x) than inter-collisions 3 from Govindaraju’s work
CD for Fracturing Models ● Fracturing ● changes topology (connectivity) of a mesh pre-computed information and acceleration structures become useless ● places many objects in close proximity CD cost is increasing ● Fracturing is one of the most challenging scenarios of collision detection 4
Goals ● Design a collision detection method that provides followings: ● efficient performance for detecting inter- and self -collisions ● stable performance with deforming models that have geometric and topological changes 5
Our Contributions ● A novel culling method for self-collision detection, dual-cone method, which is suitable for fracturing models ● A BVH selective restructuring method based on a novel cost estimation metric and a fast BVH construction technique for fracturing models 6
Benchmarks Cloth-Ball Exploding-Dragon Breaking-Walls # of topology changes 0 fixed topology 4 dynamic topology 8 dynamic topology complexity 92 K 252 K -> 252 K 42 K -> 140 K video 7
Previous Work (1/2) ● BVH update methods ● Refit ● [Teschner et al, 2005] ● Reconstruction ● [Wald et al, 2006] ● Selective restructuring ● [Larsson et al, 2006], [Yoon et al, 2006] ● Selective restructuring for progressively fracturing models ● [Otaduy et al, 2006] ● Less attention to topology changing models 8
Previous Work (2/2) ● Culling techniques for self-CD ● Reduce redundant tests (low level culling) ● [Curtis et al. 2008] ● [Tang et al. 2010] ● Easily combined with our method ● Detect self-collision free regions (high level culling) ● [Volino and Thalmann 1994] ● [Tang et al, 2008] ● [Sara et al, 2010] ● Do not directly consider topology changes 9
Outline ● Background ● Dual-Cone Method ● BVH Update Method ● Comparison ● Conclusion 10
Outline ● Background ● Dual-Cone Method ● BVH Update Method ● Comparison ● Conclusion 11
Bounding Volume Hierarchies (BVHs) ● Organize bounding volumes as a tree ● Leaf nodes have triangles 12
BVH-based CD ● BVH traversal BV overlap test A B X C Y Dequeue (A, X) Collision test pair queue 13 Z
BVH-based CD ● BVH traversal A B BV overlap test C X Y Z Dequeue Refine Self-CD (B, Y) (B, Z) (C, Y) (B, C) (Y, Z) Collision test pair queue 14 What if “A” does not have any self-collisions?
Self-Collision Free Conditions [Volino and Thalmann 1994] ● surface is rather flat ● Surface Normal Cone (SNC) bounds surface normals ● apex angle of SNC α < 90º ● Efficiently constructed and updated with BVHs [Provot 1997] SNC α ● No self-intersection on projected contour ( contour test ) 15 ● Quadratic time complexity ● Dual-Cone method reduces this overhead
Intuition of Dual-Cone Method ● Consider the curvature of projected contour ● Binormal: perpendicular to both surface normal and contour ● Binormal Cone (BNC) bounds binormals ● No self-intersection on contour axis angle of BNC β < 90º ● Dual-Cone: SNC and BNC 16 β Contour without self-intersection β Contour with self-intersection
Conservativeness of Dual-Cone ● Dual-Cone method does not provide culling for a whole surface, since it is too conservative 17
Dual-Cone Method with BVH ● Combine with BVH to provide practical culling C C ● Ignore virtual contour 18 C C C: No Self-Collision (culling) ● virtual contour: caused by bounding volume split (---) ● Can bring counter-example ● Did not miss any collisions in our complex benchmarks
Dual-Cone Method ● Dual-Cone ● SNC: surface normal cone ● BNC: binormal cone ● Contour test can be replaced with a test that whether axis of SNC is inside BNC or not 19 C C
Result of Dual-Cone Method ● Dynamic topology model ● About 100 x performance improvement at fracturing events prior method need pre-computations ● Fixed topology model Contour Test Miss Collisions ? Culling Ratio FPS No Test Yes 49% 3. 40 VT 94 No 48% 2. 54 Dual-Cone No 46% 3. 24 ● Did not miss collisions ● Comparable performance with “No Test” Low culling overhead 20
Dual-Cone Method ● Pros ● Low culling overhead O(1) for each node [Provot 1997] ● Efficiently constructed and updated for fracturing models ● Cons ● Approximate culling 21
Outline ● Background ● Dual-Cone Method ● BVH Update Method ● Comparison ● Conclusion 22
Selective Restructuring of BVHs ● As models deform, culling efficiency of their BVHs can be getting lower ● should be restructured Deform Restructuring ● How to determine efficiency of BVH? ● LM metric : Overlap volume of sibling nodes [Larsson and Akenine-Möller 2006] 23 ● Our cost metric measures expected number of intersection tests !
Cost Estimation Metric ● (1/2) = expected # of intersection tests from node for self-collision detection ● Recurrence formula n. L ● Replace with cost terms ● No self-collision at ● Dual-Cone operator 24 A n (Dual-Cone ) n. R
Cost Estimation Metric ● Cost estimation metric (2/2) for inter-collision detection [Yoon and Manocha 2006] ● We approximate ● Finally we obtain ● Metric values can be computed in bottom-up BVH refitting process 25
Metric Validation ● Estimated # of tests vs Observed # of tests ● Linear Correlation : 0. 71 ● for various models ( 0. 28 ~ 0. 76 , average 0. 48 ) 26
Selective Restructuring using Our Metric compute CD deform -restructure -update 27 Compute
Result of Selective Restructuring 252 K triangles, dynamic topology ● LM metric : [Larsson and Akenine-Möller 2006] ● Performance degradations at topological changes unstable 28
Fast BVH Construction Method ● At a fracturing event, BVH for fractured part should be re-constructed ● causes noticeable performance degradation ● Propose BVH construction method based on grid and hashing instead of typical Nlog. N methods ● Constructed hierarchy has low culling efficiency, but requires less construction time 29 ● Overall performance improved at fracturing events
Result of Fast BVH Construction ● Performance degradations at fracturing events are reduced 30
Comparison (Continuous-CD) 252 K triangles, dynamic topology ● 260 x faster than T-CCD [Tang et al. 2008] at topology changes ● Our method shows stable performance ● Characteristics of benchmarks! 31
Comparison (Discrete-CD) 42~140 K triangles, dynamic topology ● 20 x faster than optimized spatial hashing [Teschner et al, 2003] (S-Hash) ● Stable performance 32
Limitations ● Dual-Cone method combined with BVHs is an approximate method ● BVH selective restructuring method using our cost estimation metric does not guarantee to always improve the performance ● Finalize with positive 33
Conclusion ● Stable CD methods for fracturing models ● Dual-cone culling method for self-collision detection ● BVH selective-restructuring method using our cost estimation metric measuring estimated # of intersection tests ● Fast BVH construction method that reduces performance degradations at fracturing events 34 ● 260 x performance improvement at fracturing event over prior BVH based CD method ● 20 x performance improvement over optimized spatial hashing
Fracturing Benchmarks ● Our fracturing benchmarks are at: http: //sglab. kaist. ac. kr/models ● Our project page: http: //sglab. kaist. ac. kr/FASTCD 35
Acknowledgments ● Members of Scalable Graphics Lab, KAIST ● Anonymous reviewers ● Funding agencies ● MEST, NSFC, Spanish Dept. of Science and Innovation, BK, KAIST, IITA, KRF, MSRA, ADD, MKE, KSEF 36
Thanks for your attention. Any question or feedback? 37
- Slides: 37