Skip to main content
Log in

Rapid pairwise intersection tests using programmable GPUs

  • Special issue paper
  • Published:
The Visual Computer Aims and scope Submit manuscript

Abstract

Detecting self-intersections within a triangular mesh model is fundamentally a quadratic problem in terms of its computational complexity, since in principle all triangles must be compared with all others. We reflect the 2D nature of this process by storing the triangles as multiple 1D textures in texture memory, and then exploit the massive parallelism of graphics processing units (GPUs) to perform pairwise comparisons, using a pixel shader. This approach avoids the creation and maintenance of auxiliary geometric structures, such as a bounding volume hierarchy (BVH); but nevertheless we can plug in auxiliary culling schemes, and use stencils to indicate triangle pairs that do not need to be compared. To overcome the readback bottleneck between GPU and CPU, we use a hierarchical encoding scheme. We have applied our technique to detecting self-intersections in extensively deformed models, and we achieve an order of magnitude increase in performance over CPU-based techniques such as [17].

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Bolz, J., Farmer, I., Grinspun, E., Schroeder, P.: Sparse matrix solvers on the GPU: conjugate gradients and multigrid. ACM Trans. Graph. 22(3), 917–924 (2003)

    Google Scholar 

  2. Baciu, G., Wong, W., Sun, H.: Recode: an image based collision detection algorithm. J. Visual. Comput. Anim. 10(4), 181–192 (1999)

    Google Scholar 

  3. Cotin, S., Delingette, H., Ayache, N.: A hybrid elastic model for real-time cutting, deformations, and force feedback for surgery training and simulation. Visual Comput. 16, 437–452 (2000)

    Google Scholar 

  4. Elber, G., Kim, M.-S.: Offsets, sweeps, and Minkowski sums. CAD 31(3), 163 (1999)

    Google Scholar 

  5. Fernando, R., Klgard, M.J.: The Cg tutorial: The Definitive Guide to Programmable Real-time Graphics. Addison-Wesley (2003)

  6. Govindaraju, N.K., Lin, M.C., Manocha, D.: Fast self-collision culling in general environment using graphics processors. In Technical Report TR03-044 of University of North Carolina at Chapel Hill (2003)

  7. Govindaraju, N.K., Lin, M.C., Manocha, D.: Quick-cullide: fast inter- and intra-object collision culling using graphics hardware. IEEE VR 2005, Bonn, Germany, pp. 59–66 (2005)

  8. Govindaraju, N.K., Redon, S., Lin, M.C., Manocha, D.: CULLIDE: interactive collision detection between complex models in large environments using graphics hardware. In Proceedings ACM SIGGRAPH/Eurographics Workshop Graphics Hardware, pp. 25–32 (2003)

  9. Halperin, D.: Arrangements. Handbook of Discrete and Computational Geometry, CRC Press, pp. 389–412 (1997)

  10. Hughes, M., DiMattia, C., Lin, M., Manocha, D.: Efficient and accurate interference detection for polynomial deformation and soft object animation. In Proceedings of Computer Animation ’96, Geneva, Switzerland, pp. 155–166 (1996)

  11. Hoff, K., Zaferakis, A., Lin, M., Manocha, D.: Fast and simple 2D geometric proximity queries using graphics hardware. In Proceedings of Symposium on Interactive 3D Graphics, North Carolina, USA, pp. 145–148 (2001)

  12. Krueger, J., Westermann, R.: Linear algebra operators for GPU implementation of numerical algorithms. ACM Trans. Graph. 22(3), 908–916 (2003)

    Google Scholar 

  13. Larsson, T., Akenine-Moeller, T.: Collision detection for continuously deforming bodies. In Proceedings of Eurographics, Manchester, UK, pp. 325–333 (2001)

  14. Lau, R.W.H., Chan, O.: A collision detection framework for deformable objects. In Proceedings of the ACM Symposium on Virtual Reality and Technology, Hong Kong, China, pp. 113–120 (2002)

  15. Lombardo, J., Cani, M.P., Neyret, F.: Real-time collision detection for virtual surgery. In Proceedings of Computer Animation ’99, Geneva, Switzerland, pp. 33–39 (1999)

  16. Lin, M., Manocha, D.: Handbook of Discrete and Computational Geometry. Second Edition, Chapter 35 Collision and Proximity Queries, CRC Press, Boca Raton, pp. 787–808 (2004)

  17. Moeller, T.: A fast triangle-triangle intersection test. J. Graphics Tools, 2(2), 25–30 (1994)

    Google Scholar 

  18. Pellacini, F., Vidimce, K.: Cinematic lighting. In GPU Gems. Addison Wesley, Reading, MA (2004)

  19. Ramkumar, G.D.: Tracings and Their Convolutions: Theory and Application. PhD thesis, Stanford, March (1998)

  20. van den Bergen, G.: Efficient collision detection of complex deformable models using AABB trees. J. Graphics Tools 2, 1–13 (1997)

    Google Scholar 

  21. Volino, P., Magnenat-Thalmann, N.: Efficient self-collision detection on smoothly discretized surface animations using geometrical shape regularity. In Proceedings of Eurographics 94, pp. 155–166 (1994)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Myoung-Hee Kim.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Choi, YJ., Kim, Y. & Kim, MH. Rapid pairwise intersection tests using programmable GPUs. Visual Comput 22, 80–89 (2006). https://doi.org/10.1007/s00371-006-0368-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00371-006-0368-9

Keywords

Navigation