Post on 21-Dec-2015
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Collision Detection for Deformable Objects
Xin Huanghuangxin@cs.unc.edu16/10/2007
2
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Application
3
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Overview
• Deformable models deforming over time, cutting, breaking
….. expensive to update the collision query
structure such as BVH as model deforming
4
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Overview
• Self- collision many adjacent or close primitives
overlap result in a high number of false
positives very challenging
5
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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
• [Govindaraju 05] Interactive Collision Detection between Deformable Models using Chromatic Decomposition
6
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Larsson 01]
• Collision Detection for Continuously Deforming Bodies [Larsson 01]
hybrid update: an incremental bottom-up and a selective top-down update
7
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Larsson 01]
• Broad phase: sort and prune• Narrow phase: update, AABBs test,
primitive test
8
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[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
9
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Larsson 01]
• Run-time AABB UpdatesTop-down: traversing the faces under
the node; benefit if a few deep nodesBottom-up: Directly from AABBs of
sub-node; benefit if many deep nodesTrade-off
10
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Larsson 01]
• Hybrid updateFor a tree with depth n, initially
update the n / 2 first levels bottom-upNon-updated nodes are updated top-
down on the fly during collision traversal
11
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Larsson 01]
(a) reporting all intersecting triangle pairs (b) first arbitrary intersecting triangle pair
12
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Larsson 01]
• ConclusionFast to update during deformationNot consider Self-collision
13
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[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
14
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Zhang 2007]
15
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Zhang 2007]
AABB tree building & texture preparation
16
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Zhang 2007]
• Streaming AABB Overlap Tests
17
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Zhang 2007]
• Hierarchical Readback
18
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Zhang 2007]
• Primitive Intersection Test: on CPU
• Stream Update: on GPU
19
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
• Examples
[Zhang 2007]
20
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Zhang 2007]
• Excluding texture download from CPU to GPU, 2-10 times faster
• Including texture download, 1.4-2 times faster
21
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Zhang 2007]
22
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Zhang 2007]
• ConclusionStreaming AABB overlap tests and
stream update using SIMD computations
Stream reduction readbackCollision detection in Object space
23
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Zhang 2007]
• LimitationPre-setup time to prepare AABB
streams and map to textures in GPU’s memory
Need more texture memoryNot report self-intersections
24
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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
25
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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 1st pass, render the objects in the order O1, ..,On 2nd pass, render the objects in the reverse order
On,On−1, ...O1 test if an object is fully visible or not, if not, in
PCS
26
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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
27
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
CULLIDE---[Govindaraju 03]
28
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
CULLIDE---[Govindaraju 03]
• LimitationNo distance and penetration
information Image-space resolutionCannot handle self-collision
29
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Self-collision
• ChallengeNon-interactive ratesMany adjacent or nearby primitives in
close proximityA high number of false positives
30
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Govindaraju 05]
• Interactive Collision Detection between Deformable Models using Chromatic Decomposition
• Chromatic Mesh Decomposition• Set-based Self-Collision Detection
31
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Govindaraju 05]
• Non-Adjacent Collision Detection (NACD): AABB and 2.5D overlap test
• Adjacent Collision Detection (ACD): exact VF and EE elementary tests
32
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Govindaraju 05]
• Chromatic Mesh Decomposition Independent Sets
Graph Coloring Construct an extended-dual graph G = (V, E) Each primitive pi correspond to a vertex V(pi) in 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
33
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Govindaraju 05]
• AABB Hierarchy Culling Test the Hierarchy against itself Compute non-adjacent primitive colliding
• 2.5D Overlap Tests Extend CULLIDE
34
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Govindaraju 05]• 2.5D 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 pi
m which was fully visible in the first pass for potential overlap with the PCS Sj, i.e. Sj
<m
35
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[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
36
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Govindaraju 05]
37
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
[Govindaraju 05]
• LimitationMesh with fixed connectivityWork well with a small number of
overlapping pairsChromatic decomposition may
produce a high number of independent sets
38
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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
39
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Some other approaches
• Distance Fields• Spatial Subdivision• Stochastic Methods(Refer to [Teschner 2005], a State of the Art
review)
40
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
References• 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