skip to main content
10.1145/1058129.1058146acmconferencesArticle/Chapter ViewAbstractPublication PageshpgConference Proceedingsconference-collections
Article

UberFlow: a GPU-based particle engine

Published:29 August 2004Publication History

ABSTRACT

We present a system for real-time animation and rendering of large particle sets using GPU computation and memory objects in OpenGL. Memory objects can be used both as containers for geometry data stored on the graphics card and as render targets, providing an effective means for the manipulation and rendering of particle data on the GPU.To fully take advantage of this mechanism, efficient GPU realizations of algorithms used to perform particle manipulation are essential. Our system implements a versatile particle engine, including inter-particle collisions and visibility sorting. By combining memory objects with floating-point fragment programs, we have implemented a particle engine that entirely avoids the transfer of particle data at run-time. Our system can be seen as a forerunner of a new class of graphics algorithms, exploiting memory objects or similar concepts on upcoming graphics hardware to avoid bus bandwidth becoming the major performance bottleneck.

References

  1. {Bar89} Baraff D.: Analytic methods for dynamic simulation of non-penetrating rigid bodies. In ACM Computer Graphics (Proc. SIGGRAPH '89) (1989), pp. 223--232. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. {Bat68} Batcher K.: Sorting networks and their applications. In Proceedings AFIPS 1968 (1968).Google ScholarGoogle Scholar
  3. {BFGS03} Bolz J., Farmer I., Grinspun E., Schröder P.: Sparse matrix solvers on the GPU: Conjugate gradients and multigrid. In ACM Computer Graphics (Proc. SIGGRAPH '03) (2003), pp. 917--924. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. {Boo90} Boon J.: Lattice Gas Automata: A New Approach to the Simulation of Complex Flows. Plenum Press, 1990.Google ScholarGoogle Scholar
  5. {BW97} Baraff D., Wittkin A.: Physically based modeling: Principles and practice. ACM Siggraph '97 Course Note, 1997.Google ScholarGoogle Scholar
  6. {Doo90} Doolean G. (Ed.): Lattice Gas Methods for Partial Differential Equations. Addison Wesley Longman, 1990.Google ScholarGoogle Scholar
  7. {DS03} Dachsbacher C., Stamminger M.: Translucent shadow maps. In Proceedings Eurographics Symposium on Rendering 2003 (2003). Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. {EKE01} Engel K., Kraus M., Ertl T.: High-quality pre-integrated volume rendering using hardware-accelerated pixel shading. In SIGGRAPH/Eurographics Workshop on Graphics Hardware (2001). Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. {GRLM03} Govindaraju N., Redon S., Lin M., Manocha D.: Cullide: Interactive collision detection between complex models in large environments using graphics hardware. In Proceedings ACM SIGGRAPH/Eurographics Conference on Graphics Hardware (2003). Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. {Hah88} Hahn J.: Realistic animation of rigid bodies. In ACM Computer Graphics (Proc. SIGGRAPH '88) (1988), pp. 173--182. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. {HBSL03} Harris M., Baxter W., Scheuermann T., Lastra A.: Simulation of cloud dynamics on graphics hardware. In Proceedings ACM SIGGRAPH/Eurographics Workshop on Graphics Hardware (2003), pp. 12--20. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. {HMG03} Hillesland K., Molinov S., Grzeszczuk R.: Nonlinear optimization framework for image-based modeling on programmable graphics hardware. In ACM Computer Graphics (Proc. SIGGRAPH '03) (2003), pp. 925--934. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. {KPHE02} Kniss J., Premoze S., Hansen C., Ebert D.: Interactive translucent volume rendering and procedural modeling. In Proceedings IEEE Visualization (2002). Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. {KvdDP03} Knott D., van den Doel K., Pai D. K.: Particle system collision detection using graphics hardware. In SIGGRAPH 2003 Sketch (2003). Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. {KW03} Krueger J., Westermann R.: Linear algebra operators for GPU implementation of numerical algorithms. In ACM Computer Graphics (Proc. SIGGRAPH '03) (2003), pp. 908--916. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. {LKHW03} Lefohn A., Kniss J., Hansen C., Whitaker R.: Interactive deformation and visualization of level set surfaces using graphics hardware. In Proceedings IEEE Visualization (2003). Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. {LMS03} Li M., Magnor M., Seidel H.-P.: Hardware-accelerated visual hull reconstruction and rendering. In Proceedings of Graphics Interface (2003), pp. 12--20.Google ScholarGoogle Scholar
  18. {LT93} Leech J., Taylor R.: Interactive modeling using particle systems. In Proc. 2nd Conference on Discrete Element Methods (1993).Google ScholarGoogle Scholar
  19. {MA03} Moreland K., Angel E.: The FFT on a GPU. Proceedings ACM SIGGRAPH/Eurographics Workshop on Graphics Hardware (2003), 112--119. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. {McA00} McAllister D.: The design of an api for particle systems, 2000.Google ScholarGoogle Scholar
  21. {MGAK03} Mark W., Glanville R., Akeley K., Kilgard M.: Cg: A system for programming graphics hardware in a C-like language. In ACM Computer Graphics (Proc. SIGGRAPH '03) (2003), pp. 896--907. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. {Mic02} Microsoft: DirectX9 SDK. http://www.microsoft.com/DirectX, 2002.Google ScholarGoogle Scholar
  23. {Mir00} Mirtich B.: Timewarp rigid body simulation. In ACM Computer Graphics (Proc. SIGGRAPH '00) (2000), pp. 193--200. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. {Mon88} Monaghan J.: An Introduction to SPH. cpc 48 (1988), 89--96.Google ScholarGoogle Scholar
  25. {PDC*03} Purcell T., Donner C., Cammarano M., Jensen H., Hanrahan P.: Photon mapping on programmable graphics hardware. In Proceedings ACM SIGGRAPH/Eurographics Workshop on Graphics Hardware (2003), pp. 41--50. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. {Ree83} Reeves T.: Particle systems - a technique for modelling a class of fuzzy objects. ACM Computer Graphics (Proc. SIGGRAPH '83) (1983). Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. {RSEB*00} Rezk-Salama C., Engel K., Bauer M., Greiner G., T. E.: Interactive volume rendering on standard pc graphics hardware using multi-textures and multi-stage rasterization. In Eurographics Workshop on Graphics Hardware (2000), pp. 109--119. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. {SHN03} Sherbondy A., Houston M., Napel S.: Fast volume segmentation with simultaneous visualization using programmable graphics Hardware. In Proceedings IEEE Visualization (2003). Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. {Sim90} Sims K.: Particle animation and rendering using data parallel computation. In Computer Graphics (Siggraph '90 proceedings) (1990), pp. 405--413. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. {YWB03} Yang R., Welch G., Bishop G.: Real-time consensus-based scene reconstruction using commodity graphics hardware. In Proceedings of Pacific Graphics (2003), pp. 23--31. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. UberFlow: a GPU-based particle engine

      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
      • Published in

        cover image ACM Conferences
        HWWS '04: Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware
        August 2004
        142 pages
        ISBN:3905673150
        DOI:10.1145/1058129

        Copyright © 2004 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: 29 August 2004

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        Overall Acceptance Rate37of94submissions,39%

        Upcoming Conference

        HPG '24
        High-Performance Graphics
        July 26 - 28, 2024
        Denver , CO , USA

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader