180 likes | 276 Views
Overview Class #10 (Feb 18). Assignment #2 (due in two weeks) Deformable collision detection Some simulation on graphics hardware... Thursday: Cem Cebenoyan (NVIDIA) . Assignment #2: HAIL STORM!. Pelt a banana bicycle seat with hail stones Watch the punishment in slow motion!
E N D
OverviewClass #10 (Feb 18) • Assignment #2 (due in two weeks) • Deformable collision detection • Some simulation on graphics hardware... • Thursday: Cem Cebenoyan (NVIDIA)
Assignment #2: HAIL STORM! • Pelt a banana bicycle seat with hail stones • Watch the punishment in slow motion! • Given starter Java code to start • Includes Green’s function model & geometry • Implement collision & response code • How many hail stones you can handle at once?
Assignment #2: Java Starter Code • Significant starter code to get you going...
Deformable Collision Detection • Consider spatial subdivision and hierarchical methods for now • Others... graphics hardware • Similar to nondeformable case • fast query times, e.g., O(lgN) for hierarchies • But must update structure after deformation • various trade-offs • typically involves O(N) work for N simplices • Methods can be specialized for cloth-like and strand-like objects (more on that later)
BVH vs. Spatial Partitioning BVH: SP: - Object centric - Space centric - Spatial redundancy - Object redundancy (Recall from Ming Lin’s notes)
BVH vs. Spatial Partitioning BVH: SP: - Object centric - Space centric - Spatial redundancy - Object redundancy (Recall from Ming Lin’s notes)
BVH vs. Spatial Partitioning BVH: SP: - Object centric - Space centric - Spatial redundancy - Object redundancy (Recall from Ming Lin’s notes)
BVH vs. Spatial Partitioning BVH: SP: - Object centric - Space centric - Spatial redundancy - Object redundancy (Recall from Ming Lin’s notes)
Hierarchical Representations • Two Common Types: • Bounding volume hierarchies – trees of spheres, ellipses, cubes, axis-aligned bounding boxes (AABBs), oriented bounding boxes (OBBs), K-dop, SSV, etc. • Spatial decomposition - BSP, K-d trees, octrees, MSP tree, R-trees, grids/cells, space-time bounds, etc. • Many are inappropriate for deformable models • Do very well in “rejection tests” • Performance may slow down when the two objects are in close proximity and can have multiple contacts (modified from Ming Lin’s notes)
Uniform Spatial Sub Quadtree/Octree kd-tree BSP-tree Spatial Data Structures & Subdivision (modified from Ming Lin’s notes)
Uniform Spatial Subdivision • Simple but effective idea for real-time deformable collision detection • Space-time trade-off • Example • Stéphane Cotin and Hervé Delingette and Nicholas Ayache, Real-Time Elastic Deformations of Soft Tissues for Surgery Simulation, IEEE Transactions on Visualization and Computer Graphics, 5 (1), 62—73, 1999.
Bounding Volume Hierarchies • Model Hierarchy: • each node has a simple volume that bounds a set of triangles • children contain volumes that each bound a different portion of the parent’s triangles • The leaves of the hierarchy usually contain individual triangles • A binary bounding volume hierarchy: (Recall from Ming Lin’s notes)
Updating Bounding Hierarchies • Good BVHs for deformable models • Sphere trees [Brown et al.01, Guibas et al.02, ... ] • AABB-Trees [van den Bergen 97] are designed to be easily updated • Illustration on whiteboard • Bottom-up BVH update traversal
Hybrid AABB-Tree Updating • Thomas Larsson and Tomas Akenine-Möller, Collision Detection for Continuously Deforming Bodies, Eurographics 2001.
Thomas Larsson and Tomas Akenine-Möller, Collision Detection for Continuously Deforming Bodies, Eurographics 2001. • Paper’s example #1: • Bumpy spheres (20480 triangles each) • 8-ary AABB-Trees • 200 time-steps • 1st collision at time step 60 • 3760 collisions in final time-step
Preview: Simulation in Programmable Graphics Hardware • Thursday: Cem Cebenoyan (NVIDIA) • Two interesting approaches: • standard (functional) simulation • GPU (& CPU) compute, e.g., time-step, the simulation from first-principles • Fast because the GPU is fast • data-driven simulation • Precompute (and measure) data easily synthesized by GPU • Very fast because (a) the GPU is fast and (b) precomputation • Each has important applications & pros/cons
Preview: Data-driven Deformation Models • E.g., superposition of displacement fields • Important model for hardware • Lighting of model requires more than just deformed shape, e.g., normals