skip to main content
research-article

Efficient geometrically exact continuous collision detection

Published:01 July 2012Publication History
Skip Abstract Section

Abstract

Continuous collision detection (CCD) between deforming triangle mesh elements in 3D is a critical tool for many applications. The standard method involving a cubic polynomial solver is vulnerable to rounding error, requiring the use of ad hoc tolerances, and nevertheless is particularly fragile in (near-)planar cases. Even with per-simulation tuning, it may still cause problems by missing collisions or erroneously flagging non-collisions. We present a geometrically exact alternative guaranteed to produce the correct Boolean result (significant collision or not) as if calculated with exact arithmetic, even in degenerate scenarios. Our critical insight is that only the parity of the number of collisions is needed for robust simulation, and this parity can be calculated with simpler non-constructive predicates. In essence we analyze the roots of the nonlinear system of equations defining CCD through careful consideration of the boundary of the parameter domain. The use of new conservative culling and interval filters allows typical simulations to run as fast as with the non-robust version, but without need for tuning or worries about failure cases even in geometrically degenerate scenarios. We demonstrate the effectiveness of geometrically exact detection with a novel adaptive cloth simulation, the first to guarantee to remain intersection-free despite frequent curvature-driven remeshing.

Skip Supplemental Material Section

Supplemental Material

tp195_12.mp4

mp4

22.2 MB

References

  1. Bargteil, A. W., Wojtan, C., Hodgins, J. K., and Turk, G. 2007. A finite element method for animating large viscoplas-tic flow. ACM Trans. Graph. (Proc. SIGGRAPH) 26, 3. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Bridson, R., Fedkiw, R., and Anderson, J. 2002. Robust treatment of collisions, contact and friction for cloth animation. ACM Trans. Graph. (Proc. SIGGRAPH) 21, 3, 594--603. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Brochu, T., and Bridson, R. 2009. Numerically robust continuous collision detection for dynamic explicit surfaces. Tech. Rep. TR-2009-03, University of British Columbia.Google ScholarGoogle Scholar
  4. Brochu, T., and Bridson, R. 2009. Robust topological operations for dynamic explicit surfaces. SIAM J. Sci. Comput. 31, 4, 2472--2493. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Brönnimann, H., Burnikel, C., and Pion, S. 2001. Interval arithmetic yields efficient dynamic filters for computational geometry. Discrete Applied Mathematics 109, 25--47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Cgal, Computational Geometry Algorithms Library. http://www.cgal.org.Google ScholarGoogle Scholar
  7. Dekker, T. J. 1971. A floating-point technique for extending the available precision. Numerische Mathematik 18, 224--242. 10.1007/BF01397083.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Ericson, C. 2004. Real-Time Collision Detection (The Morgan Kaufmann Series in Interactive 3-D Technology). Morgan Kaufmann Publishers Inc., San Francisco, CA, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Etzmuss, O., Keckeisen, M., and Strasser, W. 2003. A fast finite element solution for cloth modelling. In Proc. 11th Pacific Conference on Computer Graphics and Applications, 244--251. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Goualard, F. 2010. Fast and correct SIMD algorithms for interval arithmetic. In Proceedings of PARA '08, Springer, Trondheim, Lecture Notes in Computer Science. 10 pages.Google ScholarGoogle Scholar
  11. Guigue, P., and Devillers, O. 2003. Fast ray-triangle intersection test using orientation predicates. Journal of Graphics Tools 8, 1, addendum.Google ScholarGoogle Scholar
  12. Harmon, D., Vouga, E., Tamstorf, R., and Grinspun, E. 2008. Robust treatment of simultaneous collisions. ACM Trans. Graph. (Proc. SIGGRAPH) 27, 3, 1--4. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Lambov, B. 2006. Interval arithmetic using SSE-2. In Reliable Implementation of Real Number Algorithms: Theory and Practice, P. Hertling, C. M. Hoffmann, W. Luther, and N. Revol, Eds., vol. 5045 of Lecture Notes in Computer Science, 102--113. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Li, L., and Volkov, V. 2005. Cloth animation with adaptively refined meshes. In Proc. 28th Australasian Conference on Computer Science - Volume 38, Australian Computer Society, Inc., Darlinghurst, Australia, Australia, ACSC '05, 107--113. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. O'Regan, D., Je Cho, Y., and Chen, Y.-Q. 2006. Topological Degree Theory and Applications. Chapman and Hall/CRC.Google ScholarGoogle Scholar
  16. Priest, D. M. 1991. Algorithms for arbitrary precision floating point arithmetic. In Proceedings of the 10th Symposium on Computer Arithmetic, IEEE Computer Society Press, 132--145.Google ScholarGoogle ScholarCross RefCross Ref
  17. Provot, X. 1997. Collision and self-collision handling in cloth model dedicated to design garment. Graphics Interface, 177--89.Google ScholarGoogle Scholar
  18. Ramsey, S. D., Potter, K., and Hansen, C. 2004. Ray bilinear patch intersections. Journal of Graphics Tools 9, 3, 41--47.Google ScholarGoogle ScholarCross RefCross Ref
  19. Selle, A., Lentine, M., and Fedkiw, R. 2008. A mass spring model for hair simulation. ACM Trans. Graph. (Proc. SIGGRAPH) 27, 64:1--64:11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Shewchuk, J. R. 1996. Robust adaptive floating-point geometric predicates. In Proceedings of the Twelfth Annual Symposium on Computational Geometry, Association for Computing Machinery, 141--150. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Stam, J. 2009. Nucleus: Towards a unified dynamics solver for computer graphics. In IEEE CADCG, 1--11.Google ScholarGoogle Scholar
  22. Tang, M., Kim, Y. J., and Manocha, D. 2010. Continuous collision detection for non-rigid contact computations using local advancement. Proc. Int'l. Conf. Robotics and Automation.Google ScholarGoogle Scholar
  23. Tang, M., Manocha, D., and Tong, R. 2010. Fast continuous collision detection using deforming non-penetration filters. In Proc. ACM SIGGRAPH Symp. Interactive 3D Graphics and Games, 7--13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Villard, J., and Borouchaki, H. 2005. Adaptive meshing for cloth animation. Eng. with Comput. 20 (August), 333--341. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Wicke, M., Ritchie, D., Klingner, B., Burke, S., Shewchuk, J., and O'Brien, J. 2010. Dynamic local remeshing for elastoplastic simulation. ACM Trans. Graphics (Proc. SIGGRAPH) 29, 3. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Wojtan, C., and Turk, G. 2008. Fast viscoelastic behavior with thin features. In ACM Trans. Graphics (Proc. SIGGRAPH), 47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Yap, C. 2004. Robust geometric computation. In CRC Handbook of Computational and Discrete Geometry, J. E. Goodman and J. O'Rourke, Eds., 2 ed. CRC Press LLC, ch. 41.Google ScholarGoogle Scholar
  28. Zhang, X., Redon, S., Lee, M., and Kim, Y. J. 2007. Continuous collision detection for articulated models using Taylor models and temporal culling. ACM Trans. Graph. (Proc. SIGGRAPH) 26, 3, 15. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Efficient geometrically exact continuous collision detection

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM Transactions on Graphics
          ACM Transactions on Graphics  Volume 31, Issue 4
          July 2012
          935 pages
          ISSN:0730-0301
          EISSN:1557-7368
          DOI:10.1145/2185520
          Issue’s Table of Contents

          Copyright © 2012 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 1 July 2012
          Published in tog Volume 31, Issue 4

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader