Back-face culling applied to collision detection of polyhedra

Back-face culling is a preprocessing technique used in computer graphics to speed up the rendering of polyhedra. In this paper we show how this technique can be modified to reduce unnecessary checking of boundary elements in collison detection for a physical-based simulation and animation systems. At each time step, we determine a priori which faces cannot be part of the contact between two polyhedra and thus can be culled. In the computer graphics technique, the normal vector of a polygon is compared with the view direction. Here, the normal is compared to one or possibly several relative-velocity vectors, and the face is culled when its motion is in the opposite direction of the normal vector. We also give an algorithm that takes linear time in terms of the number of faces, and on the average eliminates half of the polygons. Owing to its low computational overhead, when it is used as a front end to a collision detection system, a noticeable improvement in performance can be achieved.

[1]  A. James Stewart,et al.  The architecture of Newton, a general-purpose dynamics simulator , 1989, Proceedings, 1989 International Conference on Robotics and Automation.

[2]  Donald P. Greenberg,et al.  Improved Computational Methods for Ray Tracing , 1984, TOGS.

[3]  George Vanĕček,et al.  Collision Detection and Analysis in a Physically Based Simulation , 1991 .

[4]  James C. Miller,et al.  Computer graphics principles and practice, second edition , 1992, Comput. Graph..

[5]  S. Sathiya Keerthi,et al.  A fast procedure for computing the distance between complex objects in three-dimensional space , 1988, IEEE J. Robotics Autom..

[6]  G. Vanecek A data structure for analyzing collisions of moving objects , 1991, Proceedings of the Twenty-Fourth Annual Hawaii International Conference on System Sciences.

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

[8]  John E. Hopcroft,et al.  Simulation of physical systems from geometric models , 1987, IEEE J. Robotics Autom..

[9]  B. Ravani CAD Based Programming for Sensory Robots , 1988, NATO ASI Series.

[10]  George Vancek BRep-Index: a multidimensional space partitioning tree , 1991, Symposium on Solid Modeling and Applications.

[11]  J. F. Cremer,et al.  An Architecture for General Purpose Physical System Simulation-Integrating Geometry, Dynamics, and Control , 1990 .

[12]  C. M. Hoffmann,et al.  Model generation and modification for dynamic systems from geometric data , 1988 .