Approximating polyhedra with spheres for time-critical collision detection

This article presentsa method for approximatingpolyhedralobjects to support a time-critical collision-detectionalgorithm. The approximationsare hierarchies of spheres, and they allow the time-critical algorithm to progressivelyrefine the accuracy of its detection, stopping as needed to maintain the real-time performanceessential for interactive applications.The key to this approachis a preprocessthat automaticallybuilds tightly fitting hierarchies for rigid and articulatedobjects.The preprocessuses medial-axis surfaces, which are skeletal representations of objects. These skeletonsguide an optimizationtechniquethat gives the hierarchies accuracy properties appropriate for collision detection. In a sample application, hierarchies built this way allow the time-criticalcollision-detectionalgorithmto have acceptableaccuracy, improving significantly on that possible with hierarchies built by previous techniques. The performanceof the time-critical algorithmin this application is consistently 10 to 100 times better than a previous collision-detection algorithm, maintaining low latency and a nearIy constant frame rate of 10 frames per second on a conventional graphics workstation. The time-critical algorithm maintains its real-time performanceas objects become more complicated, even as they exceed previouslyreported complexitylevels by a factor of more than 10.

[1]  Bruce F. Naylor,et al.  Constructing good partitioning trees , 1993 .

[2]  James T. Kajiya,et al.  Ray tracing complex scenes , 1986, SIGGRAPH.

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

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

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

[6]  Andrew P. Witkin,et al.  Dynamic simulation of non-penetrating flexible bodies , 1992, SIGGRAPH.

[7]  Martti Mäntylä,et al.  Localized set operations for solid modeling , 1983, SIGGRAPH.

[8]  William H. Press,et al.  Numerical Recipes in C, 2nd Edition , 1992 .

[9]  Vincent Hayward,et al.  The use of awareness in collision prediction , 1990, Proceedings., IEEE International Conference on Robotics and Automation.

[10]  Dinesh Manocha,et al.  Incremental algorithms for collision detection between solid models , 1995, Symposium on Solid Modeling and Applications.

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

[12]  Yoshifumi Kitamura,et al.  A simple and efficient method for accurate collision detection among deformable polyhedral objects in arbitrary motion , 1995, Proceedings Virtual Reality Annual International Symposium '95.

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

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

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

[16]  David R. Pratt,et al.  NPSNET: REAL-TIME VEHICLE COLLISIONS, EXPLOSIONS AND TERRAIN MODIFICATIONS , 1993 .

[17]  Stephen Cameron,et al.  Collision detection by four-dimensional intersection testing , 1990, IEEE Trans. Robotics Autom..

[18]  Carlo H. Séquin,et al.  Adaptive display algorithm for interactive frame rates during visualization of complex virtual environments , 1993, SIGGRAPH.

[19]  J. O'Rourke,et al.  A spherical representation of a human body for visualizing movement , 1979, Proceedings of the IEEE.

[20]  David Baraff,et al.  Dynamic Simulation of Non-penetrating Rigid Bodies , 1992 .

[21]  C.A. Shaffer,et al.  A real-time robot arm collision avoidance system , 1992, IEEE Trans. Robotics Autom..

[22]  F. P. Brooks,et al.  Grasping reality through illusion—interactive graphics serving science , 1988, CHI '88.

[23]  John F. Canny,et al.  Collision Detection for Moving Polyhedra , 1986, IEEE Transactions on Pattern Analysis and Machine Intelligence.

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

[25]  Alex Pentland,et al.  Generalized implicit functions for computer graphics , 1991, SIGGRAPH.

[26]  Yunhui Liu,et al.  Hierarchical Sphere Model (HSM) and Its Application for Checking an Interference Between Moving Robots , 2002, IEEE International Workshop on Intelligent Robots.

[27]  Randy F. Pausch,et al.  A Literature Survey for Virtual Environments: Military Flight Simulator Visual Systems and Simulator Sickness , 1992, Presence: Teleoperators & Virtual Environments.

[28]  Narendra Ahuja,et al.  Efficient collision detection among objects in arbitrary motion using multiple shape representations , 1994, Proceedings of 12th International Conference on Pattern Recognition.

[29]  Peter Shirley,et al.  Visual navigation of large environments using textured clusters , 1995, I3D '95.

[30]  D. Baraff Dynamic simulation of nonpenetrating rigid bodies , 1992 .

[31]  Adrian Bowyer,et al.  Computing Dirichlet Tessellations , 1981, Comput. J..

[32]  A. van Dam VR as a forcing function: Software implications of a new paradigm , 1993, Proceedings of 1993 IEEE Research Properties in Virtual Reality Symposium.

[33]  Bruce F. Naylor,et al.  Set operations on polyhedra using binary space partitioning trees , 1987, SIGGRAPH.

[34]  John Salmon,et al.  Automatic Creation of Object Hierarchies for Ray Tracing , 1987, IEEE Computer Graphics and Applications.

[35]  Philip M. Hubbard,et al.  Interactive collision detection , 1993, Proceedings of 1993 IEEE Research Properties in Virtual Reality Symposium.

[36]  Norman I. Badler,et al.  Production and playback of human figure motion for 3D virtual environments , 1995, Proceedings Virtual Reality Annual International Symposium '95.

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

[38]  TurkGreg Generating textures on arbitrary surfaces using reaction-diffusion , 1991 .

[39]  Philip M. Hubbard Real-Time Collision Detection and Time-Critical Computing , 1995 .

[40]  Gary E. Riccio,et al.  Visually Induced Motion Sickness in Virtual Environments , 1992, Presence: Teleoperators & Virtual Environments.

[41]  Alejandro M. García-Alonso,et al.  Solving the collision detection problem , 1994, IEEE Computer Graphics and Applications.

[42]  Christoph M. Hoffmann,et al.  How to Construct the Skeleton of CSG Objects , 1990 .

[43]  Hanan Samet,et al.  Bintrees, CSG trees, and time , 1985, SIGGRAPH.

[44]  John Rohlf,et al.  IRIS performer: a high performance multiprocessing toolkit for real-time 3D graphics , 1994, SIGGRAPH.

[45]  John M. Snyder,et al.  Interval methods for multi-point collisions between time-dependent curved surfaces , 1993, SIGGRAPH.

[46]  Michael Ian Shamos,et al.  Computational geometry: an introduction , 1985 .

[47]  KwangYun Wohn,et al.  Realtime collision detection for virtual reality applications , 1993, Proceedings of IEEE Virtual Reality Annual International Symposium.

[48]  Harry B. Hunt,et al.  The Complexity of Monadic Recursion Schemes: Executability Problems, Nesting Depth, and Applications , 1983, Theor. Comput. Sci..

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

[50]  Greg Turk,et al.  Generating textures on arbitrary surfaces using reaction-diffusion , 1991, SIGGRAPH.

[51]  John A. Goldak,et al.  Constructing discrete medial axis of 3-D objects , 1991, Int. J. Comput. Geom. Appl..

[52]  David G. Kirkpatrick,et al.  Fast Detection of Polyhedral Intersection , 1983, Theor. Comput. Sci..