Skip to main content
Log in

An octree-based proxy for collision detection in large-scale particle systems

  • Research Paper
  • Published:
Science China Information Sciences Aims and scope Submit manuscript

Abstract

Particle systems are important building block for simulating vivid and detail-rich effects in virtual world. One of the most difficult aspects of particle systems has been detecting collisions between particles and mesh surface. Due to the huge computation, a variety of proxy-based approaches have been proposed recently to perform visually correct simulation. However, all either limit the complexity of the scene, fail to guarantee non-penetration, or are too slow for real-time use with many particles. In this paper, we propose a new octree-based proxy for colliding particles with meshes on the GPU. Our approach works by subdividing the scene mesh with an octree in which each leaf node associates with a representative normal corresponding to the normals of the triangles that intersect the node. We present a view-visible method, which is suitable for both closed and non-closed models, to label the empty leaf nodes adjacent to nonempty ones with appropriate back/front property, allowing particles to collide with both sides of the scene mesh. We show how collisions can be performed robustly on this proxy structure in place of the original mesh, and describe an extension that allows for fast traversal of the octree structure on the GPU. The experiments show that the proposed method is fast enough for real-time performance with millions of particles interacting with complex scenes.

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. Reeves W T. Particle systems—a technique for modeling a class of fuzzy objects. ACM Trans Graphic, 1983, 2: 91–108

    Article  Google Scholar 

  2. Witkin A, Baraff D. Physically based modeling: principles and practice. In: Proceedings of SIGGRAPH’97 Course notes. 1997

  3. Kolb A, Latta L, Rezk-Salama C. Hardware-based simulation and collision detection for large particle systems. In: Proceedings of the ACM SIGGRAPH/EUROGRAPHICS Conference on Graphics Hardware. 2004. 123–131

  4. Drone S. Real-time particle systems on the GPU in dynamic environments. In: Proceedings of ACM SIGGRAPH 2007 Courses. San Diego, 2007. 80–96

  5. Sims K. Particle animation and rendering using data parallel computation. In: Proceedings of the 17th Annual Conference on Computer Graphics and Interactive Techniques. Dallas, 1990. 405–413

  6. Owens J D, Luebke D, Govindaraju N, et al. A survey of general-purpose computation on graphics hardware. Comput Graph Forum, 2007, 26: 80–113

    Article  Google Scholar 

  7. Latta L. Building a million particle system. Lecture at the GDC, 2004

  8. Kipfer P, Segal M, Westermann R. UberFlow: a GPU-based particle engine. In: Proceedings of the ACM SIGGRAPH/EUROGRAPHICS Conference on Graphics Hardware. 2004. 115–122

  9. Venetillo J S, Celes W. GPU-based particle simulation with inter-collisions. Visual Comput, 2007, 23: 851–860

    Article  Google Scholar 

  10. Glasner A S. Space subdivision for fast ray tracing. IEEE Comput Graph, 1984, 4: 15–22

    MathSciNet  Google Scholar 

  11. MacDonald D J, Booth K S. Heuristics for ray tracing using space subdivision. Visual Comput, 1990, 6: 153–166

    Article  Google Scholar 

  12. Samet H. Applications of Spatial Data Structures: Computer Graphics, Image Processing, and GIS. Addison-Wesley, 1990

  13. Scherson I D, Caspary E. Data structures and the time complexity of ray tracing. Visual Comput, 1987, 3: 201–213

    Article  Google Scholar 

  14. Benson D, Davis J. Octree textures. ACM Trans Graphic, 2002, 21: 785–790

    Google Scholar 

  15. DeBry D, Gibbs J, Petty D D, et al. Painting and rendering textures on unparameterized models. ACM Trans Graphic, 2002, 21: 763–768

    Google Scholar 

  16. Hormann K, Polthier K, Sheffer A. Mesh parameterization: theory and practice. In: Proceedings of ACM SIGGRAPH ASIA 2008 Courses. Singapore, 2008. 1–87

  17. Lefebvre S, Dachsbacher C. TileTrees. In: Proceedings of the 2007 symposium on Interactive 3D Graphics and Games. Seattle, 2007. 25–31

  18. Lefebvre S, Hornus S, Neyret F. GPU Gems 2: Octree Textures on the GPU. Addison-Wesley, 2005

  19. Castro R, Lewiner T, Lopes H, et al. Statistical optimization of octree searches. Comput Graph Forum, 2008, 27: 1557–1566

    Article  MATH  Google Scholar 

  20. Warren M S, Salmon J K. A parallel hashed octree N-Body algorithm. In: Proceedings of the 1993 ACM/IEEE Conference on Supercomputing. Portland, 1993. 12–21

  21. Bloomenthal J. Polygonization of implicit surfaces. Comput Aided Geom D, 1988, 5: 341–355

    Article  MathSciNet  MATH  Google Scholar 

  22. Cohen-Steiner D, Alliez P, Desbrun M. Variational shape approximation. ACM Trans Graph, 2004, 23: 905–914

    Article  Google Scholar 

  23. Haines E. Point in polygon strategies. Graphics Gems IV, 1994: 24–46

  24. Lacoste J, Boubekeur T, Jobard B, et al. Appearance preserving octree-textures. In: Proceedings of the 5th International Conference on Computer Graphics and Interactive Techniques in Australia and Southeast Asia, 2007. 87–93

  25. NVIDIA. NVIDIA CUDA Programming Guide 1.1. 2007

  26. Green S. Particle Simulation using CUDA. NVIDIA Whitepaper, 2010

  27. Zhou K, Gong M M, Huang X, et al. Data-parallel octrees for surface reconstruction. IEEE Trans Vis Comput Gr, 2011, 17: 669–681

    Article  Google Scholar 

  28. Deng H, Zhang L Q, Mao X C, et al. Fast and dynamic generation of linear octrees for geological bodies under hardware acceleration. Sci China Earth Sci, 2010, 53: 113–119

    Article  Google Scholar 

  29. Yang Z W, Seo Y H, Kim T W. Adaptive triangular-mesh reconstruction by mean-curvature-based refinement from point clouds using a moving parabolic approximation. Comput Aid Des, 2010, 42: 2–17

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to WenShan Fan.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Fan, W., Wang, B., Paul, JC. et al. An octree-based proxy for collision detection in large-scale particle systems. Sci. China Inf. Sci. 56, 1–10 (2013). https://doi.org/10.1007/s11432-012-4616-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11432-012-4616-5

Keywords

Navigation