Fast Collision Detection for Deformable Models using Representative-Triangles Sean Curtis 1, Rasmus Tamstorf 2, & Dinesh Manocha 1 I3D 2008 February 15,

Slides:



Advertisements
Similar presentations
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL CULLIDE: Interactive Collision Detection Between Complex Models in Large Environments using Graphics Hardware.
Advertisements

NCS 2009: Workshop on Image Processing, Computer Graphics,
Complete Motion Planning
Collision Detection CSCE /60 What is Collision Detection?  Given two geometric objects, determine if they overlap.  Typically, at least one of.
Computer graphics & visualization Collisions. computer graphics & visualization Simulation and Animation – SS07 Jens Krüger – Computer Graphics and Visualization.
Geometric Representations & Collision Detection Kris Hauser I400/B659: Intelligent Robotics Spring 2014.
Week 14 - Monday.  What did we talk about last time?  Bounding volume/bounding volume intersections.
Proximity Computations between Noisy Point Clouds using Robust Classification 1 Jia Pan, 2 Sachin Chitta, 1 Dinesh Manocha 1 UNC Chapel Hill 2 Willow Garage.
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.
Haptic Rendering using Simplification Comp259 Sung-Eui Yoon.
Collision Detection for Deformable Models Huai-Ping Lee
Review Methods for convex polytopes See video demonstration
Collision Detection CSE 191A: Seminar on Video Game Programming Lecture 3: Collision Detection UCSD, Spring, 2003 Instructor: Steve Rotenberg.
Fast Penetration Depth Computation for Physically-based Animation Y. Kim, M. Otaduy, M. Lin and D.
GPU Proximity Queries with Swept Sphere Volumes COMP Robotics Project Proposal Qi Mo.
Tomas Mőller © 2000 Speeding up your game The scene graph Culling techniques Level-of-detail rendering (LODs) Collision detection Resources and pointers.
UNC Chapel Hill M. C. Lin References Collision Detection between Geometric Models: A Survey, by M. Lin and S. Gottschalk, Proc. of IMA Conference on Mathematics.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Soft Shadows using Hardware Cameras Kyle Moore COMP 870.
Adapted from: CULLIDE: Interactive Collision Detection Between Complex Models in Large Environments using Graphics Hardware Naga K. Govindaraju, Stephane.
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2004/index.htm Collision Detection and Distance Computation: Feature Tracking Methods.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Continuous Collision Detection David Knott COMP 259 class presentation.
Overview Class #10 (Feb 18) Assignment #2 (due in two weeks) Deformable collision detection Some simulation on graphics hardware... –Thursday: Cem Cebenoyan.
Dynamic Maintenance and Self Collision Testing for Large Kinematic Chains Lotan, Schwarzer, Halperin, Latombe.
Ray Tracing Dynamic Scenes using Selective Restructuring Sung-eui Yoon Sean Curtis Dinesh Manocha Univ. of North Carolina at Chapel Hill Lawrence Livermore.
OBBTree: A Hierarchical Structure for Rapid Interference Detection Gottschalk, M. C. Lin and D. ManochaM. C. LinD. Manocha Department of Computer Science,
Kinetic Data Structures and their Application in Collision Detection Sean Curtis COMP 768 Oct. 16, 2007.
Bounding Volume Hierarchies and Spatial Partitioning Kenneth E. Hoff III COMP-236 lecture Spring 2000.
Proximity Queries Using Spatial Partitioning & Bounding Volume Hierarchy Dinesh Manocha Department of Computer Science University of North Carolina at.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Collision Detection for Deformable Objects Xin Huang 16/10/2007.
Collision Detection and Distance Computation CS 326A: Motion Planning.
1 Advanced Scene Management System. 2 A tree-based or graph-based representation is good for 3D data management A tree-based or graph-based representation.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Collision Detection and Distance Computation.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Collision Detection and Distance Computation.
Collision Detection David Johnson Cs6360 – Virtual Reality.
CS B659: Principles of Intelligent Robot Motion Collision Detection.
11/25/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Managing large numbers of objects Colliding spheres with things (spheres being common.
12/4/2001CS 638, Fall 2001 Today Using separating planes/axes for collision testing Collision detection packages.
Efficient Maintenance and Self-Collision Testing for Kinematic Chains Itay Lotan Fabian Schwarzer Dan Halperin Jean-Claude Latombe.
CSE 381 – Advanced Game Programming Quickhull and GJK.
Efficient Maintenance and Self- Collision Testing for Kinematic Chains Itay Lotan Fabian Schwarzer Dan Halperin Jean-Claude Latombe.
Accelerating Ray Tracing using Constrained Tetrahedralizations Ares Lagae & Philip Dutré 19 th Eurographics Symposium on Rendering EGSR 2008Wednesday,
9th International Fall Workshop VISION, MODELING, AND VISUALIZATION 2004 November , 2004 Stanford (California), USA Poster Session 4 Geometry Processing.
Quick-CULLIDE: Efficient Inter- and Intra- Object Collision Culling using Graphics Hardware Naga K. Govindaraju, Ming C. Lin, Dinesh Manocha University.
Institute of C omputer G raphics, TU Braunschweig Hybrid Scene Structuring with Application to Ray Tracing 24/02/1999 Gordon Müller, Dieter Fellner 1 Hybrid.
Collaborative Visual Computing Lab Department of Computer Science University of Cape Town Graphics Topics in VR By Shaun Nirenstein.
Collision and Proximity Queries Dinesh Manocha Department of Computer Science University of North Carolina
CIS 350 – I Game Programming Instructor: Rolf Lakaemper.
Click to edit Master title style HCCMeshes: Hierarchical-Culling oriented Compact Meshes Tae-Joon Kim 1, Yongyoung Byun 1, Yongjin Kim 2, Bochang Moon.
Efficient Raytracing of Deforming Point-Sampled Surfaces Mark Pauly Leonidas J. Guibas Bart Adams Philip Dutré Richard Keiser Markus Gross.
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
Stable 6-DOF Haptic Rendering with Inner Sphere Trees René Weller, Gabriel Zachmann Clausthal University, Germany IDETC/CIE.
Chapter 11 Collision Detection 가상현실 입문 그래픽스 연구실 민성환.
A stochastic approach for collision detection in a highly deformable surface Laks Raghupati, Vincent Cantin, François Faure, Marie-Paule Cani EVASION-GRAVIR.
Presented by Paul Phipps
CULLIDE: Interactive Collision Detection Between Complex Models in Large Environments using Graphics Hardware Presented by Marcus Parker By Naga K. Govindaraju,
Interactive Continuous Collision Detection for Polygon Soups Xin Huang 11/20/2007.
Minkowski Sums and Distance Computation Eric Larsen COMP
Fast Collision Detection for Deformable Models using Representative-Triangles Presented by Marcus Parker By Sean Curtis, Rasmus Tamstorf and Dinesh Manocha.
1 Haptic Systems Mohsen Mahvash Lecture 6 17/1/06.
Bounding Volume Hierarchies and Spatial Partitioning
Stable 6-DOF Haptic Rendering with Inner Sphere Trees
Optimized Continuous Collision Detection for Deformable Triangle Meshes Marco Hutter and Arnulph Fuhrmann WCSG’2007 – 30 January, 2007 – Plzen,
Bounding Volume Hierarchies and Spatial Partitioning
Deformable Collision Detection
Hybrid Ray Tracing of Massive Models
Parts of these slides are based on
Cache-Efficient Layouts of BVHs and Meshes
Collision Detection.
Deformable Collision Detection
David Johnson Cs6360 – Virtual Reality
Presentation transcript:

Fast Collision Detection for Deformable Models using Representative-Triangles Sean Curtis 1, Rasmus Tamstorf 2, & Dinesh Manocha 1 I3D 2008 February 15, University of North Carolina at Chapel Hill 2 Walt Disney Animation Studios

Faster Collision Detection Seven layers of cloth and body with 50K triangles. 3.3X collision detection speed-up with Representative Triangles.

Previous Work General surveys –Ericson 2004; Lin and Manocha 2003; Teschner et al

Previous Work Triangle-pair Culling –BVH - BV types Sphere, Swept-sphere, AABB, OBB, k-DOP, hybrid, etc. Bradshaw and O’Sullivan. 2004; Gottschalk et al. 1996; Hubbard 1993; Klosowski et al. 1998; van den Bergen 1997; etc.

Previous Work Triangle-pair Culling –BVH Management Restructuring, rebuilding, lazy construction, etc. Larsson and Akenine-Möller 2006; Otaduy et al. 2007, Yoon et al. 2007; Zachmann and Weller 2006.

Previous Work Triangle-pair Culling –BVH Management Restructuring, rebuilding, lazy construction, etc. Larsson and Akenine-Möller 2006; Otaduy et al. 2007, Yoon et al. 2007; Zachmann and Weller –Specialized culling techniques Normal cones, GPU-based culling, etc. Govindaraju et al. 2005; Provot 1997; Sud et al

Previous Work Feature-based Collision Detection –Voronoi regions (convex and non-convex) Ehmann and Lin 2001; Lin and Canny 1991; Mirtich 1998.

Previous Work Feature-based Collision Detection –Voronoi regions (convex and non-convex) Ehmann and Lin 2001; Lin and Canny 1991; Mirtich –Feature BVs Hutter and Fuhrmann 2007.

Previous Work Continuous Collision Detection –Reduction of elementary tests –Govindaraju et al. 2005; Hutter and Fuhrmann 2007; Tang et al. 2007; Wong 2005, etc.

Continuous Collision Detection (CCD) Time of collision. t = i+1t = i

Continuous Collision Detection (CCD) Time of collision. t = i+1t = i+Δtt = i

Continuous Collision Detection (CCD) Time of collision. Test between features (vertices, edges and faces.) Edge-EdgeVertex-Face

Triangles vs. Features Triangles used for culling.

Triangles vs. Features Triangles used for culling. CD operates on features.

Triangles vs. Features Triangles used for culling. CD operates on features. This leads to: –Less efficient culling –Elementary test duplication

Culling Efficiency Features usually occupy significantly less space than their corresponding triangles.

Culling Efficiency Features usually occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –1 EE test

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –1 EE test

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests –0 VF tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests –0 VF tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests –0 VF tests

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests –1 VF test

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests –1 VF test

Culling Efficiency Features can occupy significantly less space than their corresponding triangles. Based on triangle BVs: –15 elementary tests Based on feature BVs: –2 EE tests –1 VF test

Elementary Test Duplication The intersecting vertex is shared by six triangles.

Elementary Test Duplication The intersecting vertex is shared by six triangles. The VF test could be spawned by six different triangle pairs.

Representative Triangles (R-Tris) R-Tris definition R-Tris usage R-Tris properties Computing R-Tris (assignment)

R-Tri Definition An augmented triangle that “represents” some subset of its features and their corresponding feature BVs.

R-Tri Definition Feature Assignment The pattern in which each feature is assigned to an R-Tri is an assignment scheme.

R-Tri Definition Feature Assignment The pattern in which each feature is assigned to an R-Tri is an assignment scheme. Assignment scheme –Not unique. –Every feature is assigned to one and only one triangle, incident to the feature.

R-Tri Usage Given a pair of R-Tris that are potentially colliding: –Find corresponding feature pairs.

R-Tri Usage Given a pair of R-Tris that are potentially colliding: –Find corresponding feature pairs. –Test feature BVs.

R-Tri Usage Given a pair of R-Tris that are potentially colliding: –Find corresponding feature pairs. –Test feature BVs.

R-Tri Usage Given a pair of R-Tris that are potentially colliding: –Find corresponding feature pairs. –Test feature BVs.

R-Tri Usage Given a pair of R-Tris that are potentially colliding: –Find corresponding feature pairs. –Test feature BVs.

R-Tri Usage Given a pair of R-Tris that are potentially colliding: –Find corresponding feature pairs. –Test feature BVs. –Spawn elementary tests.

R-Tri Usage Given a pair of R-Tris that are potentially colliding: –Find corresponding feature pairs. –Test feature BVs. –Spawn elementary tests. Improves culling and eliminates duplicates.

R-Tris Properties General –Compatible with any triangle-pair culling algorithm (including grids, BVHs, sweep & prune, GPU occlusion queries, etc.)

R-Tris Properties Complete –R-Tris will find all collisions, guaranteed.

R-Tris Properties Compact –R-Tris need no additional memory. (However, O(|E|) data can be cached to potentially boost performance.)

R-Tris Properties Connectivity-based –Representation is a function of topology. For meshes which only undergo deformation, assignment is a pre-processing step.

Computing R-Tris Assignment Schema How are features assigned to R-Tris? Does it matter? How many elementary tests are performed per contact?

Assignment Schema Optimal assignment –One elementary test per contact.

Assignment Schema Optimal assignment –One elementary test per contact. –Dependent on triangle-pair culling efficiency.

Assignment Schema Optimal assignment –One elementary test per contact. –Dependent on triangle-pair culling efficiency. –Assignment schema offer limited freedom.

Assignment Schema Example

Assignment Schema Example Tests –2 VF, 0 EE Total –2 VF, 0 EE

Assignment Schema Example Tests –2 VF, 2 EE Total –4 VF, 2 EE

Assignment Schema Example Tests –1 VF, 4 EE Total –5 VF, 6 EE

Assignment Schema Example Tests –1 VF, 4 EE Total –6 VF, 10 EE

Assignment Schema Example Tests –1 VF, 2 EE Total –7 VF, 12 EE

Assignment Schema Example Tests –2 VF, 4 EE Total –9 VF, 16 EE

Assignment Schema Example

Assignment Schema Example Tests –0 VF, 0 EE Total –0 VF, 0 EE

Assignment Schema Example Tests –1 VF, 0 EE Total –1 VF, 0 EE

Assignment Schema Example Tests –0 VF, 0 EE Total –1 VF, 0 EE

Assignment Schema Example Tests –0 VF, 0 EE Total –1 VF, 0 EE

Assignment Schema Example Tests –0 VF, 0 EE Total –1 VF, 0 EE

Assignment Schema Example Tests –0 VF, 0 EE Total –1 VF, 0 EE

Global Optimality A single assignment scheme which provides optimal performance for all cases.

Global Optimality A single assignment scheme which provides optimal performance for all cases. Unfeasible in general

Global Optimality A single assignment scheme which provides optimal performance for all cases. Unfeasible in general –No a priori knowledge of deformations.

Global Optimality A single assignment scheme which provides optimal performance for all cases. Unfeasible in general –No a priori knowledge of deformations. –Representation is localized. The probability that neighboring triangles are included by the triangle- pair culling algorithm are high.

Global Assignment Schema Maximal Scheme [Wong and Baciu 2005] Total Tests –3 VF Empty Tri

Global Assignment Schema Maximal Scheme [Wong and Baciu 2005] Total Tests –9 VF –27 EE Average –19.5 tests Full Tri

Global Assignment Schema Uniform Scheme Total Tests –9 VF –9 EE V-E Tri

Global Assignment Schema Uniform Scheme Total Tests –9 VF –9 EE Average –18 tests E-E Tri

Global Assignment Schema Efficacy of a scheme depends on: –Actual mesh deformation, and –Triangle-pair culling efficiency.

Global Assignment Schema Efficacy of a scheme depends on: –Actual mesh deformation, and –Triangle-pair culling efficiency. The assignment scheme doesn’t really matter.

Global Assignment Schema Simple greedy scheme –Visit each triangle For each incident feature that hasn’t already been assigned, assign it to this triangle.

Global Assignment Schema Simple greedy scheme –Visit each triangle For each incident feature that hasn’t already been assigned, assign it to this triangle Very simple. Very fast.

Benchmarks Flamenco Dancer Tris: 50 K Verts: 26 K Edges: 75 K Frames: 352 Princess Tris: 92 K Verts: 47 K Edges: 139 K Frames: 1045 N-Body Balls Tris: 34 K Verts: 18 K Edges: 51 K Frames: 375 Cloth-Ball Tris: 40 K Verts: 20 K Edges: 60 K Frames: 465

Results System Characteristics –Binary BVH. –AABB BVs. –For self-collision, adjacent features are never tested.

Results System Characteristics –Binary BVH. –AABB BVs. –For self-collision, adjacent features are never tested. Hardware –Intel Xeon 3 GHz with 3 GBytes RAM –32-bit Windows XP

Results Comparison Algorithms –R-Tri (RTRI) * In the paper DB is ADJ and MARK is NO-DUPL.

Results Comparison Algorithms –R-Tri (RTRI) –Database (DB) * Run-time database to eliminate duplicate queries. Feature BVs for improved culling. * In the paper DB is ADJ and MARK is NO-DUPL.

Results Comparison Algorithms –R-Tri (RTRI) –Database (DB) * Run-time database to eliminate duplicate queries. Feature BVs for improved culling. –Mark-up (MARK) * Uses representation without feature BVs. * In the paper DB is ADJ and MARK is NO-DUPL.

Results Comparison Algorithms –R-Tri (RTRI) –Database (DB) * Run-time database to eliminate duplicate queries. Feature BVs for improved culling. –Mark-up (MARK) * Uses representation without feature BVs. –Baseline (BASIC) No duplicate culling and no feature BVs. * In the paper DB is ADJ and MARK is NO-DUPL.

Results Average Number of Elementary Tests (× 10 6 ) / Average Frame Time for CCD (sec) Speed-up of R-TRI R-TRIDBMARKBASICR-TRIDBMARKBASIC 0.23 / / / / X1.5 X 5.3 X 0.27 / / / / X1.7 X1.6 X5.1 X 0.45 / / / / X2.9 X1.4 X5.0 X 0.46 / / / / X3.3 X1.5 X4.9 X

Limitations Subservient to the choice of BV-type – even with feature BVs (AABB) false positives > 90%.

Limitations Subservient to the choice of BV-type – even with feature BVs (AABB) false positives > 90%. Benefit decreases as the meshes become triangle soups – every triangle represents all of its own features.

Limitations Subservient to the choice of BV-type – even with feature BVs (AABB) false positives > 90%. Benefit decreases as the meshes become triangle soups – every triangle represents all of its own features. It may take a performance hit in memory- strapped systems.

Conclusions A simple mechanism for accelerating collision detection.

Conclusions A simple mechanism for accelerating collision detection. –Eliminates duplicate queries without expensive run-time data structures.

Conclusions A simple mechanism for accelerating collision detection. –Eliminates duplicate queries without expensive run-time data structures. –Easy to implement.

Conclusions A simple mechanism for accelerating collision detection. –Eliminates duplicate queries without expensive run-time data structures. –Easy to implement. –Complementary to most existing CD systems.

Conclusions A simple mechanism for accelerating collision detection. –Eliminates duplicate queries without expensive run-time data structures. –Easy to implement. –Complementary to most existing CD systems. –Orthogonal to culling algorithm and BV type.

Acknowledgments ARO NSF DARPA/RDECOM Intel Walt Disney Animation Studios

Questions

References BRADSHAW, G., AND O’SULLIVAN, C Adaptive medial-axis approximation for sphere-tree construction. ACM Trans. on Graphics 23, 1. EHMANN, S., AND LIN, M. C Accurate and fast proximity queries between polyhedra using convex surface decomposition. Computer Graphics Forum (Proc. of Eurographics’2001) 20, 3, 500–510. ERICSON, C Real-Time Collision Detection. Morgan Kaufmann. GOTTSCHALK, S., LIN, M., AND MANOCHA, D OBBTree: A hierarchical structure for rapid interference detection. Proc. of ACM Siggraph’96, 171– 180.

References GOVINDARAJU, N., KNOTT, D., JAIN, N., KABAL, I., TAMSTORF, R., GAYLE, R., LIN, M., AND MANOCHA, D Collision detection between deformable models using chromatic decomposition. ACM Trans. on Graphics (Proc. of ACM SIGGRAPH) 24, 3, 991–999. HUBBARD, P. M Interactive collision detection. In Proceedings of IEEE Symposium on Research Frontiers in Virtual Reality. HUTTER, M., AND FUHRMANN, A Optimized continuous collision detection for deformable triangle meshes. In Proc. WSCG ’07, 25–32. KLOSOWSKI, J., HELD, M., MITCHELL, J., SOWIZRAL, H., AND ZIKAN, K Efficient collision detection using bounding volume hierarchies of k-dops. IEEE Trans. on Visualization and Computer Graphics 4, 1, 21–37.

References LARSSON, T., AND AKENINE-MÖLLER, T A dynamic bounding volume hierarchy for generalized collision detection. Computers and Graphics 30, 3, 451– 460. LIN, M., AND CANNY, J. F Efficient algorithms for incremental distance computation. In IEEE Conference on Robotics and Automation, 1008–1014. LIN, M., AND MANOCHA, D Collision and Proximity Queries. In Handbook of Discrete and Computational Geometry: Collision detection MIRTICH, B V-Clip: Fast and robust polyhedral collision detection. ACM Transactions on Graphics 17, 3 (July), 177–208.

References MOLLER, T A fast triangle-triangle intersection test. Journal of Graphics Tools 2, 2. OTADUY, M., CHASSOT, O., STEINEMANN, D., AND GROSS, M Balanced hierarchies for collision detection between fracturing objects. In IEEE Virtual Reality. PROVOT, X Collision and self-collision handling in cloth model dedicated to design garment. Graphics Interface, 177–189. TANG, M., YOON, S., CURTIS, S., AND MANOCHA, D Interactive continuous collision detection between deformable models using connectivity-based culling. UNC Chapel Hill, Technical Report.

References 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 Collision detection for deformable objects. Computer Graphics Forum 19, 1, 61–81. TROPP, O., TAL, A., SHIMSHONI, I A fast triangle to triangle intersection test for collision detection. Computer Animation and Virtual Worlds 17, 5, 527–535. VAN DEN BERGEN, G Efficient collision detection of complex deformable models using AABB trees. Journal of Graphics Tools 2, 4, 1–14.

References WONG, W. S.-K., AND BACIU, G A randomized marking scheme for continuous collision detection in simulation of deformable surfaces. Proc. of ACM VRCIA. YOON, S., CURTIS, S., AND MANOCHA, D Ray tracing dynamic scenes using selective restructuring. Proc. of Eurographics Symposium on Rendering. ZACHMANN, G., AND WELLER, R Kinetic bounding volume hierarchies for deforming objects. In ACM Int’l Conf. on Virtual Reality Continuum and its Applications.

Feature-based Hierarchies Memory –There are 2 * N nodes in a BVH with N nodes. –Typically, |E| + |V| = 2 * F. –There are 3 * F total leaves yielding 6 * F total nodes. –In a triangle soup, |E| + |V| = 6 * F giving 14 * F total nodes.

Representative Triangles The Strengths Preliminary results – VF culling: BenchmarkTotal non- adjacent pairs Implied VF tests VF_BV Overlaps VF_BV Cull rate V-Line Intersections V-Line Cull rate balls4.7 x x x % 6.23 x % cloth-ball9.98 x x x % 7.22 x % princess2.33 x x x % 4.78 x % dragon- bunny 2.66 x x x % 7.49 x %

Representative Triangles The Strengths Preliminary results – EE culling: BenchmarkTotal non- adjacent pairs Implied EE tests EE_BV Overlaps EE_BV Cull rate balls4.7 x x x % cloth-ball9.98 x x x % princess2.33 x x x % dragon- bunny 2.66 x x x %

Last Thoughts Zero additional memory –Swept vertices need no BV. –Edge BVs can be computed on the fly. –Assignment encoded in triangle ID. Adaptive reassignment –Might be possible to adaptively change assignments to accommodate actual collisions. –Move non-colliding feature assignments to incident tris not involved in collisions.