Fast collision detection among multiple moving spheres

This paper presents an event-driven approach that efficiently detects collisions among multiple ballistic spheres moving in the 3D space. Adopting a hierarchical uniform space subdivision scheme, we are able to trace the trajectories of spheres and their time-varying spatial distribution. We identify three types of events to detect the sequence of all collisions during our simulation: collision, entering, and leaving. The first type of events is due to actual collisions, and the other two types occur when spheres move from subspace to subspace in the space. Tracing all such events in the order of their occurring times, we are able to avoid fixed time step simulation. When the size of the largest sphere is bounded by a constant multiple of that of the smallest, it takes On n n n ce log log + 16 time with O(n) space after O(n log n) time preprocessing to simulate n moving spheres, where n c and n e are the number of actual collisions and that of entering and leaving events during the simulation, respectively. Since n e depends on the size of subspaces, we modify the collision model from kinetic theory for molecular gas to determine the subspace sizes for the space subdivision scheme, that minimize simulation time. Experimental results show that collision detection can be done in linear time in n over a large range. Index Terms—Collision detection, event-driven approach, physical simulation, computer animation, computational geometry. ——————————F——————————

[1]  Philip M. Hubbard,et al.  Collision Detection for Interactive Graphics Applications , 1995, IEEE Trans. Vis. Comput. Graph..

[2]  Craig W. Reynolds Flocks, herds, and schools: a distributed behavioral model , 1987, SIGGRAPH.

[3]  Greg Turk,et al.  Interactive Collision Detection for Molecular Graphics , 1990 .

[4]  Vincent Hayward,et al.  Efficient Collision Prediction Among Many Moving Objects , 1995, Int. J. Robotics Res..

[5]  Dinesh Manocha,et al.  Fast contact determination in dynamic environments , 1994, Proceedings of the 1994 IEEE International Conference on Robotics and Automation.

[6]  R. Webb,et al.  Using dynamic bounding volume hierarchies to improve efficiency of rigid body simulations , 1992 .

[7]  Dinesh Manocha,et al.  I-COLLIDE: an interactive and exact collision detection system for large-scale environments , 1995, I3D '95.

[8]  Norman I. Badler,et al.  Decomposition of Three-Dimensional Objects into Spheres , 1979, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[9]  Ming C. Lin,et al.  Efficient collision detection for animation and robotics , 1993 .

[10]  Philip M. Hubbard,et al.  Approximating polyhedra with spheres for time-critical collision detection , 1996, TOGS.

[11]  Edward M. Reingold,et al.  Binary Search Trees of Bounded Balance , 1973, SIAM J. Comput..

[12]  George S. Lueker,et al.  Adding range restriction capability to dynamic data structures , 1985, JACM.

[13]  Tom Duff,et al.  Interval arithmetic recursive subdivision for implicit functions and constructive solid geometry , 1992, SIGGRAPH.

[14]  Mark H. Overmars,et al.  Spheres, molecules, and hidden surface removal , 1994, SCG '94.

[15]  John M. Snyder,et al.  Interval analysis for computer graphics , 1992, SIGGRAPH.

[16]  David Baraff,et al.  Curved surfaces and coherence for non-penetrating rigid body simulation , 1990, SIGGRAPH.

[17]  Alan H. Barr,et al.  Geometric collisions for time-dependent parametric surfaces , 1990, SIGGRAPH.

[18]  John F. Canny,et al.  Impulse-based simulation of rigid bodies , 1995, I3D '95.

[19]  Dinesh Manocha,et al.  OBBTree: a hierarchical structure for rapid interference detection , 1996, SIGGRAPH.

[20]  Ming C. Lin,et al.  A fast algorithm for incremental distance calculation , 1991, Proceedings. 1991 IEEE International Conference on Robotics and Automation.

[21]  Leonidas J. Guibas,et al.  Data Structures for Mobile Data , 1997, J. Algorithms.

[22]  Karl Sims,et al.  Particle animation and rendering using data parallel computation , 1990, SIGGRAPH.

[23]  Richard Szeliski,et al.  Surface modeling with oriented particle systems , 1992, SIGGRAPH.

[24]  James K. Hahn,et al.  Realistic animation of rigid bodies , 1988, SIGGRAPH.

[25]  Mark H. Overmars,et al.  Point Location in Fat Subdivisions , 1992, Inf. Process. Lett..

[26]  William T. Reeves Particle systems—a technique for modeling a class of fuzzy objects , 1993 .

[27]  Victor J. Milenkovic Position-based physics: simulating the motion of many highly interacting spheres and polyhedra , 1996, SIGGRAPH.

[28]  David Baraff,et al.  Linear-time dynamics using Lagrange multipliers , 1996, SIGGRAPH.

[29]  Sean Quinlan,et al.  Efficient distance computation between non-convex objects , 1994, Proceedings of the 1994 IEEE International Conference on Robotics and Automation.

[30]  C. Levinthal Molecular model-building by computer. , 1966, Scientific American.

[31]  Jane Wilhelms,et al.  Collision Detection and Response for Computer Animation , 1988, SIGGRAPH.

[32]  C. Kittel Introduction to solid state physics , 1954 .