Advertisement

The Visual Computer

, Volume 35, Issue 4, pp 549–563 | Cite as

A draw call-oriented approach for visibility of static and dynamic scenes with large number of triangles

  • Yvens Rebouças Serpa
  • Maria Andréia Formico RodriguesEmail author
Original Article
  • 82 Downloads

Abstract

Graphical applications require high levels of interactivity, usually measured in frames per second (FPS), which motivates the development of increasingly efficient and versatile solutions for the rendering process. Visibility culling algorithms are used to determine which surfaces (or sets of triangles) in a 3D scene are not visible from a certain viewpoint. However, the precision of this step in the graphics pipeline does not necessarily guarantee better FPS rates, since it is directly related to the number of draw calls made to render the set of triangles currently viewed. In addition, this process may be costly enough to compromise the level of interactivity that the application user perceives. In this work, we present RHView, a solution to the visibility problem that focuses on the trade-off between visibility culling precision and the number of draw calls to achieve high FPS rates in complex scenes with approximately 650 million triangles, with both static and dynamic objects. Our approach uses both the view frustum culling and occlusion culling algorithms adapted for greater synergy with RHOctree, a spatial partitioning structure we have designed from heuristics, temporal coherence and index replication to reduce the number of draw calls. The results show that it is possible to achieve FPS rates up to thirty times higher than with some traditional solutions.

Keywords

Visibility culling Spatial partitioning data structures Heuristics Draw calls Interactive FPS Dynamic scenes 

Notes

Acknowledgements

Maria Andréia Formico Rodrigues and Yvens Rebouças Serpa would like to thank the Brazilian Agencies CAPES and FUNCAP-CE for their financial support, respectively, under grants 88881.120921/2016-01 and PEP-0094-00005.01.09/2014. The authors would like to also thank the referees for their valuable comments which helped to improve the manuscript.

References

  1. 1.
    Alderson, T., Samavati, F.: Optimizing line-of-sight using simplified regular terrains. Vis. Comput. 31(4), 407–421 (2015)CrossRefGoogle Scholar
  2. 2.
    Batagelo, H.C., Shin-Ting, W.: Dynamic scene occlusion culling using a regular grid. In: Proceedings of the XV Computer Graphics and Image Processing, 2002. Brazilian Symposium on Computer Graphics and Image Processing (SIBGRAPI), pp. 43–50. IEEE (2002)Google Scholar
  3. 3.
    Bittner, J., Havran, V., Slavik, P.: Hierarchical visibility culling with occlusion trees. In: Proceedings of the 1998 Computer Graphics International, pp. 207–219. IEEE (1998)Google Scholar
  4. 4.
    Chen, J., Jiang, S., Destefano, Z., Yoon, S., Gopi, M.: Optimally redundant, seek-time minimizing data layout for interactive rendering. Vis. Comput. 33(2), 139–149 (2017)CrossRefGoogle Scholar
  5. 5.
    Cohen-Or, D., Chrysanthou, Y.L., Silva, C.T., Durand, F.: A survey of visibility for walkthrough applications. IEEE Trans. Vis. Comput. Graph. 9(3), 412–431 (2003)CrossRefGoogle Scholar
  6. 6.
    Corporation, V.: Team fortress 2. http://www.teamfortress.com (2007). Accessed 24 June 2017
  7. 7.
    Foundation, B.: Blender 3D. http://www.blender.org (2016). Accessed 24 June 2017
  8. 8.
    Funkhouser, T.A., Séquin, C.H.: Adaptive display algorithm for interactive frame rates during visualization of complex virtual environments. In: Proceedings of the 20th Annual Conference on Computer Graphics and Interactive Techniques, pp. 247–254. ACM (1993)Google Scholar
  9. 9.
    Guthe, M., Balázs, Á., Klein, R.: Near optimal hierarchical culling: performance driven use of hardware occlusion queries. In: Proceedings of the Eurographics Symposium on Rendering Techniques, pp. 207–214 (2006)Google Scholar
  10. 10.
    Hasselgren, J., Andersson, M., Akenine-Möller, T.: Masked software occlusion culling. In: Proceedings of the 2016 High Performance Graphics, pp. 23–31. Eurographics Association (2016)Google Scholar
  11. 11.
    Hey, H., Purgathofer, W.: Occlusion culling methods. In: Proceedings of the 2001 Eurographics, p. 43 (2001)Google Scholar
  12. 12.
    Hillesland, K., Salomon, B., Lastra, A., Manocha, D.: Fast and simple occlusion culling using hardware-based depth queries. Tech. rep., Chapel Hill: University of North Carolina (2002)Google Scholar
  13. 13.
    Hudson, T., Manocha, D., Cohen, J., Lin, M., Hoff, K., Zhang, H.: Accelerated occlusion culling using shadow frusta. In: Proceedings of the 13th Annual Symposium on Computational Geometry, pp. 1–10. ACM (1997)Google Scholar
  14. 14.
    Mattausch, O., Bittner, J., Wimmer, M.: CHC++: Coherent hierarchical culling revisited. In: Proceedings of the Eurographics 2008, vol. 27, pp. 221–230. Wiley Online Library (2008)Google Scholar
  15. 15.
    Muldoon, M.: Blend swap. http://www.blendswap.com (2015). Accessed 24 June 2017
  16. 16.
    Papaioannou, G., Gaitatzes, A., Christopoulos, D.: Efficient occlusion culling using solid occluders. In: Proceedings of the 14th International Conference in Central Europe on Computer Graphics. Václav Skala—UNION Agency (2006)Google Scholar
  17. 17.
    RHView: Static scenes with and without dynamic objects. RHView: a draw call oriented approach for visibility of static and dynamic scenes with large-number of triangles. (Online). https://youtu.be/9HEvbyi1dgM and https://youtu.be/JDnpPw2EGFo (2017). Accessed 24 June 2017
  18. 18.
    Samet, H., Webber, R.E.: Hierarchical data structures and algorithms for computer graphics I. fundamentals. IEEE Comput. Graphics Appl. 8(3), 48–68 (1988)CrossRefGoogle Scholar
  19. 19.
    Schmidt, M.R.: Toward improved batchability of 3D objects using a consolidated shader. J. Graph. Tools 17(4), 151–158 (2013)CrossRefGoogle Scholar
  20. 20.
    Sekulic, D.: Efficient occlusion culling. In: R. Fernando (ed.) GPU Gems, pp. 487–503. Addison-Wesley (2004). http://tinyurl.com/hdkl8fp
  21. 21.
    Serpa, Y.R., Serpa, Y.R., Rodrigues, M.A.E.: A comparative study on a novel drawcall-wise visibility culling and space-partitioning data structures. In: Proceedings of the XV SBGames, 2016. Brazilian Symposium on Games (SBGAMES), pp 36–43. SBC (2016)Google Scholar
  22. 22.
    Stanford University: The stanford 3D scanning repository. (Online). http://graphics.stanford.edu/data/3Dscanrep/ (2014). Accessed 24 June 2017
  23. 23.
    Toledo, L., De Gyves, O., Rudomín, I.: Hierarchical level of detail for varied animated crowds. Vis. Comput. 30(6–8), 949–961 (2014)CrossRefGoogle Scholar
  24. 24.
    University of North Carolina: Power plant model. http://gamma.cs.unc.edu/Powerplant/ (2001). Accessed 24 June 2017
  25. 25.
    Wimmer, M., Wonka, P.: Rendering time estimation for real-time rendering. In: Proceedings of the 2003 Eurographics Symposium on Rendering, pp. 118–129. Eurographics (2003)Google Scholar
  26. 26.
    Wloka, M.: Batch, batch, batch: what does it really mean? Presentation at Game Developers Conference (2003). http://tinyurl.com/glo7o7k
  27. 27.
    Zhang, H., Manocha, D., Hudson, T., Hoff III, K.E.: Visibility culling using hierarchical occlusion maps. In: Proceedings of the 24th Annual Conference on Computer Graphics and Interactive Techniques, pp. 77–88. ACM Press/Addison-Wesley Publishing Co. (1997)Google Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature 2018

Authors and Affiliations

  • Yvens Rebouças Serpa
    • 1
  • Maria Andréia Formico Rodrigues
    • 1
    Email author
  1. 1.PPGIA, Universidade de Fortaleza (UNIFOR)Fortaleza-CEBrazil

Personalised recommendations