Collision Detection for Deformable Objects Application 2 Overview
Collision Detection for Deformable Objects
Application 2
Overview • Deformable models Ø deforming over time, cutting, breaking …. . Ø expensive to update the collision query structure such as BVH as model deforming 3
Overview • Self- collision Ø many adjacent or close primitives overlap Ø result in a high number of false positives Ø very challenging 4
Outline • [Larsson 01] Collision detection for continuously deforming bodies • [Zhang 2007] Interactive Collision Detection for Deformable Models • [Govindaraju 03] CULLIDE: Interactive Collision Detection between Complex Models in Large Environments using Graphics Hardware 5 • [Govindaraju 05] Interactive Collision Detection between Deformable Models using Chromatic Decomposition
[Larsson 01] • Collision Detection for Continuously Deforming Bodies [Larsson 01] Ø hybrid update: an incremental bottom-up and a selective top-down update 6
[Larsson 01] • Broad phase: sort and prune • Narrow phase: update, AABBs test, primitive test 7
[Larsson 01] • Bounding volume pre-processing Ø Built 8 -ary AABB tree in top-down manner Ø A parent AABB is split along three principle axis to form 8 child sub-volumes Ø Split planes: center point of the box or average of all polygon’s midpoints 8
[Larsson 01] • Run-time AABB Updates Ø Top-down: traversing the faces under the node; benefit if a few deep nodes Ø Bottom-up: Directly from AABBs of subnode; benefit if many deep nodes Ø Trade-off 9
[Larsson 01] • Hybrid update Ø For a tree with depth n, initially update the n / 2 first levels bottom-up Ø Non-updated nodes are updated top-down on the fly during collision traversal 10
[Larsson 01] (a) reporting all intersecting triangle pairs 11 (b) first arbitrary intersecting triangle pair
[Larsson 01] • Conclusion Ø Fast to update during deformation Ø Not consider Self-collision 12
[Zhang 2007] • Interactive Collision Detection for Deformable Models using Streaming AABBs---[Zhang 2007] Ø Bound deformable objects as input streams Ø Use GPU to perform parallel pairwise overlap test Ø Compute in object space • Previous GPU based method Ø Depend on image resolution and view direction 13
[Zhang 2007] 14
[Zhang 2007] AABB tree building 15 & texture preparation
[Zhang 2007] • Streaming AABB Overlap Tests 16
[Zhang 2007] • Hierarchical Readback 17
[Zhang 2007] • Primitive Intersection Test: on CPU • Stream Update: on GPU 18
[Zhang 2007] • Examples 19
[Zhang 2007] • Excluding texture download from CPU to GPU, 2 -10 times faster • Including texture download, 1. 4 -2 times faster 20
[Zhang 2007] 21
[Zhang 2007] • Conclusion Ø Streaming AABB overlap tests and stream update using SIMD computations Ø Stream reduction readback Ø Collision detection in Object space 22
[Zhang 2007] • Limitation Ø Pre-setup time to prepare AABB streams and map to textures in GPU’s memory Ø Need more texture memory Ø Not report self-intersections 23
CULLIDE---[Govindaraju 03] • CULLIDE: Interactive Collision Detection Between Complex Models in Large Environments using Graphics Hardware • Compute potentially colliding set (PCS) • Visibility query by graphics hardware 24
CULLIDE---[Govindaraju 03] • An object O does not collide with a set of objects S if O is fully-visible with respect to S. • Compute PCS by two pass Ø 1 st pass, render the objects in the order O 1, . . , On Ø 2 nd pass, render the objects in the reverse order On, On− 1, . . . O 1 Ø test if an object is fully visible or not, if not, in PCS 25
CULLIDE---[Govindaraju 03] • Object level pruning Ø perform object level pruning by computing the PCS of objects. • Sub-Object Pruning Ø identify potential regions of each object in PCS • Exact Collision Detection Ø Triangle-triangle intersection on the CPU 26
CULLIDE---[Govindaraju 03] 27
CULLIDE---[Govindaraju 03] • Limitation Ø No distance and penetration information Ø Image-space resolution Ø Cannot handle self-collision 28
Self-collision • Challenge Ø Non-interactive rates Ø Many adjacent or nearby primitives in close proximity Ø A high number of false positives 29
[Govindaraju 05] • Interactive Collision Detection between Deformable Models using Chromatic Decomposition • Chromatic Mesh Decomposition • Set-based Self-Collision Detection 30
[Govindaraju 05] • Non-Adjacent Collision Detection (NACD): AABB and 2. 5 D overlap test • Adjacent Collision Detection (ACD): exact VF and EE elementary tests 31
[Govindaraju 05] • Chromatic Mesh Decomposition Ø Independent Sets Ø Graph Coloring v Construct an extended-dual graph G = (V, E) v Each primitive pi correspond to a vertex V(pi) in V v Add an edge (V(pl), V(pm)) to E if and only if ♦ pl and pm are vertex-adjacent ♦ There exists a primitive p in the mesh that both (pl, p) and (p, pm) are adjacent 32
[Govindaraju 05] • AABB Hierarchy Culling Ø Test the Hierarchy against itself Ø Compute non-adjacent primitive colliding • 2. 5 D Overlap Tests Ø Extend CULLIDE 33
[Govindaraju 05] • 2. 5 D Overlap Tests Ø First pass: Traverse the primitives in Si from the last to the first. Test if pim is fully-visible against previously rendered primitives in Sj, i. e. S j>m • Second pass: Traverse the primitives in Si from the first to the last. Only test the primitive pim which was fully visible in the first pass for potential overlap with the PCS Sj, i. e. Sj<m 34
[Govindaraju 05] • Ø Ø Ø Exact Tests: Non-Adjacent Primitives Merge the PCS of all independent sets Use AABB hierarchy to compute intersecting pairs Perform EE and VF tests between pairs • Exact Tests: Adjacent Primitives Ø Check all adjacent primitives for intersection Ø Do not test the shared edge or vertex 35
[Govindaraju 05] 36
[Govindaraju 05] • Limitation Ø Mesh with fixed connectivity Ø Work well with a small number of overlapping pairs Ø Chromatic decomposition may produce a high number of independent sets 37
Conclusion • No general or optimal method existed • Approaches based on BVH have shown to be efficient • Image-space techniques can achieve highly culling rate, however, is limited by discretization accuracy • Self-collision still remains challenging 38
Some other approaches • Distance Fields • Spatial Subdivision • Stochastic Methods (Refer to [Teschner 2005], a State of the Art review) 39
References • • • 40 Survey: LIN M. , MANOCHA D. : Collision and proximity queries. In Handbook of Discrete and Computational Geometry, 2003 Collision detection for deformable objects. Teschner, M. , Kimmerle, S. , Heidelberger, B. , Zachmann, G. , Raghupathi, L. , Fuhrmann, A. , Cani, M. -P. , Faure, F. , Magnenat-Thalmann, N. , Strasser, W. , and Volino, P. 2005. Computer Graphics Forum Larsson T. , Akenine-Möller T. 2001. Collision detection for continuously deforming bodies. In Eurographics, pp. 325– 333. short presentation. Interactive Collision Detection for Deformable Models Using Streaming AABBs, Xinyu Zhang, Young J. Kim, IEEE Trans Visualization & Computer Graphics, 2007 Govindaraju, N. , Redon, S. , Lin, M. C. , and Manocha, D. 2003. CULLIDE: Interactive Collision Detection between Complex Models in Large Environments using Graphics Hardware. Proc. of Eurographics/SIGGRAPH Workshop on Graphics Hardware Interactive Collision Detection between Deformable Models using Chromatic Decomposition, Naga K. Govindaraju, David Knott, Nitin Jain, Ilknur Kabul, Rasmus Tamstorf, Russel Gayle, Ming C. Lin, Dinesh Manocha in ACM SIGGRAPH 2005
- Slides: 40