skip to main content
research-article

Boids that see: Using self-occlusion for simulating large groups on GPUs

Published:01 January 2010Publication History
Skip Abstract Section

Abstract

Behavioral models have been used in the entertainment industry to increase the realism in the simulation of large groups of individuals. Unfortunately, the classical models can be very compute-intensive when very large groups are considered, reducing its applicability in games and other interactive systems. In this article we explore both search space reduction and parallelism to improve the performance of Reynold's Boids model. We propose a methodology that considers self-occlusion (visibility culling) to reduce the number of neighbors and we take advantage the parallelism present in common graphics processor units (GPUs) to allow the simulation of very large groups. We performed different GPU implementations (GPGPU and CUDA); the results show that visibility culling allows significant gains in performance without affecting the model's overall behavior.

References

  1. Breitbart, J. 2008. Case studies on GPU usage and data structure design. Master's thesis, Universität Kassel.Google ScholarGoogle Scholar
  2. Chiara, R. D., Erra, U., Scarano, V., and Tatafiore, M. 2004. Massive simulation using GPU of a distributed behavioral model of a flock with obstacle avoidance. In Vision Modeling and Visualization (VMV), 233--240.Google ScholarGoogle Scholar
  3. Cohen-Or, D., Chrysanthou, Y., and Silva, C. 2003. A survey of visibility for walkthrough applications. IEEE Trans. Visualization and Computer Graphics 9, 3 (July--Sept.), 412--431. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Courty, N. and Musse, S.R. 2005. Simulation of large crowds in emergency situations including gaseous phenomena. In Proceedings of the Computer Graphics International (CGI'05). IEEE, 206--212. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Drone, S. 2007. Real-time particle systems on the GPU in dynamic environments. In Proceedings of the International Conference on Computer Graphics and Interactive Techniques (SIGGRAPH'07). ACM, New York, 80--96. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Halfhill, T. 2008. Parallel Processing With Cuda. Microprocessor. In Proceedings of the 2008 Symposium on Interactive 3D Graphics and Games, 89--97.Google ScholarGoogle Scholar
  7. Harris, M. and Buck, I. 2005. GPU Gems 2 -- Programming Techniques for High-Performance Graphics and General- Purpose Computation. Addison Wesley, 547--555. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Klosowski, J. T. and Silva, C. T. 2000. The prioritized layered projection algorithm for visible set estimation. IEEE Trans. Visualization and Computer Graphics 6, 2, 108--123. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Kolb, A., Latta, L., and Rezk-Salama, C. 2004. Hardware based simulation and collision detection for large particle systems. In Proceedings of the ACM SIGGRAPH/EUROGRAPHICS Conference on Graphics Hardware ACM, New York, 123--131. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Marcolino, L. S. and Chaimowicz, L. 2008. No robot left behind: Coordination to overcome local minima in swarm navigation. In Proceedings of the IEEE International Conference on Robotics and Automation, 1904--1909.Google ScholarGoogle Scholar
  11. Mark, W. R., Glanville, R. S., Akeley, K., and Kilgard, M. J. 2003. Cg: A system for programming graphics hardware in a C-like language. In Proceedings of the International Conference on Computer Graphics and Interactive Techniques. ACM, New York, 896--907. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. nVidia. 2008. nVidia CUDA programming guide 2.1.Google ScholarGoogle Scholar
  13. nVidia Corp. 2007. nVidia CUDA computer unified device architecture programming guide. http://developer.nvidia.com/cuda.Google ScholarGoogle Scholar
  14. Owens, J.D., Luebke, D., Govindaraju, N., Harris, M., Rger, J., Lefohn, A.E., and Purcell, T.J. 2007. A survey of general-purpose computation on graphics hardware. Computer Graphics Forum 26, 1, 80--113.Google ScholarGoogle ScholarCross RefCross Ref
  15. Passos, E., Joselli, M., Zamith, M., Rocha, J., Clua, E., Montenegro, A., Conci, A., and Feijó, B. 2008. Supermassive crowd simulation on GPU based on emergent behavior. In Proceedings of the Seventh Brazilian Symposium on Computer Games and Digital Entertainment (SBGames'08), Sociedade Brasileira de Computação, SBC, 70--75.Google ScholarGoogle Scholar
  16. Quinn, M.J., Metoyer, R., and Hunter-Zaworski, K. 2003. Parallel implementation of the social forces model. In Proceedings of the Second International Conference in Pedestrian and Evacuation Dynamics, 63--74.Google ScholarGoogle Scholar
  17. Reeves, W.T. 1983. Particle systems—A technique for modeling a class of fuzzy objects. ACM Trans. Graphics 2, 2, 91--108. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Reynolds, C.W. 2006. Big fast crowds on ps3. In Proceedings of the 2006 ACM SIGGRAPH Symposium on Videogames (Sandbox '06). ACM, New York, 113--121. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Reynolds, C.W. 1987. Flocks, herds and schools: A distributed behavioral model. In Proceedings of the 14th Annual Conference on Computer Graphics and interactive Techniques, 25--34. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Shao, W. and Terzopoulos, D. 2005. Autonomous pedestrians. In Proceedings of the 2005 ACM SIGGRAPH/Eurographics Symposium on Computer Animation (SCA'05), ACM, New York, 19--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Shreiner, D., Woo, M., Neider, J., and Davis, T. 2005. OpenGL(R) Programming Guide: The Official Guide to Learning OpenGL(R), Vers. 2 (5th ed.), Addison-Wesley, Reading, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Sillion, F.X. 1995. A unified hierarchical algorithm for global illumination with scattering volumes and object clusters. IEEE Trans. Visualization Computer Graphics 1, 3, 240--254. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Thalmann, D. and Musse, S. 2007. Crowd Simulation, Springer, Berlin. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Terzopoulos, D., Tu, X., and Grzeszczuk, R. 1994. Artificial fishes: Autonomous locomotion, perception, behavior, and learning in a simulated physical world. Artificial Life 1, 4, 327--351. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Treuille, A., Cooper, S., and Popovi'c, Z. 2006. Continuum crowds. ACM Trans. Graphics 25, 3, 1160--1168. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Boids that see: Using self-occlusion for simulating large groups on GPUs

              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 Computers in Entertainment
                Computers in Entertainment   Volume 7, Issue 4
                SPECIAL ISSUE: Games
                December 2009
                245 pages
                EISSN:1544-3574
                DOI:10.1145/1658866
                Issue’s Table of Contents

                Copyright © 2010 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 January 2010
                • Accepted: 1 July 2009
                • Received: 1 February 2009

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article
                • Research
                • Refereed

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader

              HTML Format

              View this article in HTML Format .

              View HTML Format