Presentation is loading. Please wait.

Presentation is loading. Please wait.

Adaptive Continuous Collision Detection for Cloth Models using a Skipping Frame Session 黃 世強 ( Sai-Keung Wong ) Department of Computer Science National.

Similar presentations


Presentation on theme: "Adaptive Continuous Collision Detection for Cloth Models using a Skipping Frame Session 黃 世強 ( Sai-Keung Wong ) Department of Computer Science National."— Presentation transcript:

1 Adaptive Continuous Collision Detection for Cloth Models using a Skipping Frame Session 黃 世強 ( Sai-Keung Wong ) Department of Computer Science National Chiao Tung University Paper ID: 16 NCS 2009: Workshop on Image Processing, Computer Graphics, and Multimedia Technologies(ICM) 1

2 Contents Introduction Background The pipeline of continuous collision detection Self-collision detection Analysis and discussion Experiments and results Conclusions 2

3 Introduction Continuous collision detection? - Perform linear (or higher order) interpolation for two discrete frames - Compute contact time of primitives, such as triangles - Triangular meshes: linear interpolation - solving cubic equations - computing shortest distances - six point-triangle and nine edge-edge pairs Frame 1 Frame 2 3

4 Introduction Applications: – Deformable objects – Cloth simulation A problem: A large set of potentially colliding pairs – Slow performance An observation: Local coherence – A large portion of colliding pairs remains the same 4

5 Introduction: Local coherence 5

6 Introduction BVH traversal contributes a significant amount of time 6 Elementary test processing BVH traversal BVH update

7 Contributions A novel adaptive pipeline for continuous collision detection: – BVH update – BVH traversal – A skipping frame session – Elementary tests A partial traversal scheme – Handling triangles with large movement Robustness: keep track of colliding pairs 7

8 Background: Cloth simulation D.E. Baraff and A. Witkin, “Large steps in cloth simulation”, SIGGRAPH, R. Bridson, R. Fedkiw, and J. Anderson, “Robust treatment of collisions, contact and friction for cloth simulation”, ACM ToG K.J. Choi and H.S. Ko, “Stable but responsive cloth”, SIGGRAPH, 2004 A. Selle, J. Su, G. Irving, and R. Fedkiw, “Robust high- resolution cloth using parallelism history-based collisions and accurate friction”, TVCG P. Volino and N. Magnenat-Thalmann, “Efficient self-collision detection on smoothly discretised surface and animation using geometrical shape regularity”, Computer graphics forum,

9 Background: Continuous collision detection M. Hutter and Fuhrmann, “Optimized continuous collision detection for deformable triangle meshes”, WSCG, T. Larsson and T. Akenine-Moller, “Efficient collision detection deformed by morphing”, Visual computer, M.Tang, S.E. Yoon and D. Manocha, “Adjacency-based culling for continuous collision detection ”, Visual Computer, M.Tang, S. Curtis, S.E. Yoon and D. Manocha, “ICCD: Interactive continuous collision detection between deformable models using connectivity-based culling”, TVCG, S.K. Wong and G. Baciu, “Dynamic interaction between deformable surfaces and nonsmooth objects”, TVCG, S.K. Wong and G. Baciu, “A randomized marking scheme for continuous collision detection in simulation of deformable surfaces”, ACM International Conference on Virtual Reality Continuum and Its Applications,

10 The Pipeline of CCD Preprocessing stage – Construction of bounding volume hierarchies (BVHs) – The primitive assignment Runtime stage – BVH update with inflation, refitting each node – BVH traversal, collecting potentially colliding pairs – Adaptively apply a skipping frame session – Front-end and back-end filtering stages 10

11 Preprocessing stage Construction of bounding volume hierarchies (BVHs) Build a hierarchy structure to bound each object 11

12 Preprocessing stage Primitive assignment – Assign each triangle to itself – Assign each edge and each vertex to one of its incident triangles A B eA0eA0 eB0eB0 eB1eB1 q0q0 (a) (b) Edge assignment Vertex assignment 12

13 Runtime stage: BVH update Purpose: refitting each node with inflation Larger bounding volume 13 d(p) = (  v (p) +  v )  t+  l Estimated movement distance

14 Runtime stage: BVH traversal Purpose: Collect potentially colliding pairs – Bounding volumes overlap A potentially colliding pair 14 Problems: – A large number of such pairs – Too far away to collide within the current interval – Further treatment

15 Runtime stage: Front-end and back-end filtering stages Front-end: eliminate redundant triangle pairs – Check estimated shortest distance – d e i (T 0, T 1 ) <= d e i+1 (T 0 ) + d e i+1 (T 1 ) +  d e i+1 (T 0 ) 15 Back-end: – Perform continuous collision detection Solve coplanar times for each primitive pair Compute shortest distances for verification

16 Runtime stage: Skipping frame session Purpose: Adaptively apply a skipping frame session Advantages: – Local movement of a triangle – Lying inside its inflated bounding volume – > no need BVH update – > no need traversal 16

17 Handling dangling triangles Triangles with large movement – Passing through their bounding volumes Large movement 17 Two solutions: 1. Traversal individually 2. Partial traversal scheme

18 Self-collision detection Low curvatured surface partitioning – Compute continuous normal cone for each triangle – Perform bottom-up merging to obtain low curvature surfaces Collision detection between low curvatured surfaces 18

19 Analysis Consider a small box b lying inside another box B Free movement distance: d = d(b, B) Time step =  t Relative speed = v Number of skipping frames = d / ( v  t ) 19

20 Experiments and Results Intel (R) Core (TM2) Quadcore CPU machine with 2.4GHz of 2GB memory One thread for computation Comparison with two methods and others: – NoDup : – S.K. Wong and G. Baciu, “A randomized marking scheme for continuous collision detection in simulation of deformable surfaces”, ACM International Conference on Virtual Reality Continuum and Its Applications, – R-RTI : S. Curtis, R. Tamstorf, and D. Manocha, “Fast collision detection for deformable models using representative- triangles”, Proceedings of the 2008 symposium on Interactive 3D graphics and games,

21 Experiment Set One: < 100k triangles 21

22 Experiment Set One: Average Collision Detection Time Per Time Step ( sec ) (including self-collision detection) NoDupR-TRInSwDSwD ( % R-TRI ) Ani. One Spinning ball ( 72%) Ani. Two Ball-cloth ( 74%) Ani. Three Four cones ( 59%) Ani. Four Garment (68%) 22

23 Experiment Set Two: > 300k triangles 23

24 Experiment Set Two Labels: a x f  x : length of skipping frame session 24

25 Experiments and Results Experiment Set One: Model Complexities Rigid Objects ( #Tri )Cloth Models ( #Tri ) Ani. One5.2 k97 k Ani. Two10 k45 k Ani. Three0.5 k97 k Ani. Four34 k20 k Experiment Set Two: Model Complexities Ani. One11 k320 k Ani. Two7 k500 k Ani. Three1 k502 k Ani. Four40 k500 k 25

26 Comparison: Traditional approach vs our approach 26 TraditonalOur Bounding volume sizesmallerlarger BVH updateyessometimes BVH traversalyessometimes Number of potentially colliding pairs fewerlarger Memory storagelesshigher Robustnessokbetter Speedokfaster

27 Conclusions & future work Propose a novel adaptive framework for continuous collision detection using a skipping frame session Fast performance High memory requirement but increased robustness Apply to multilayered garments Reduce storage size 27

28 28 Thank you. Q & A.


Download ppt "Adaptive Continuous Collision Detection for Cloth Models using a Skipping Frame Session 黃 世強 ( Sai-Keung Wong ) Department of Computer Science National."

Similar presentations


Ads by Google