Skip to main content
Log in

Separating semantics from rendering: a scene graph based architecture for graphics applications

  • Original Article
  • Published:
The Visual Computer Aims and scope Submit manuscript

Abstract

A large number of rendering and graphics applications developed in research and industry are based on scene graphs. Traditionally, scene graphs encapsulate the hierarchical structure of a complete 3D scene, and combine both semantic and rendering aspects. In this paper, we propose a clean separation of the semantic and rendering parts of the scene graph. This leads to a generally applicable architecture for graphics applications that is loosely based on the well-known Model-View-Controller (MVC) design pattern for separating the user interface and computation parts of an application. We explore the benefits of this new design for various rendering and modeling tasks, such as rendering dynamic scenes, out-of-core rendering of large scenes, generation of geometry for trees and vegetation, and multi-view rendering. Finally, we show some of the implementation details that have been solved in the process of using this software architecture in a large framework for rapid development of visualization and rendering applications.

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. Burns, D., Osfield, R.: Open scene graph a: Introduction, b: Examples and applications. In: VR ’04: Proceedings of the IEEE Virtual Reality 2004, Washington, DC, USA, 2004, p. 265. IEEE Computer Society, Los Alamitos (2004)

    Chapter  Google Scholar 

  2. Bosi, M.: Visualization library. First official version, July 2009. Available from: http://www.visualizationlibrary.com/ (accessed February 11, 2011)

  3. Cook, R.: Shade trees. In: Proceedings of the 11th Annual Conference on Computer Graphics and Interactive Techniques, pp. 223–231. ACM, New York (1984)

    Google Scholar 

  4. Deutsch, L.P., Schiffman, A.M.: Efficient implementation of the smalltalk-80 system. In: POPL ’84: Proceedings of the 11th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, New York, NY, USA, 1984, pp. 297–302. ACM, New York (1984)

    Chapter  Google Scholar 

  5. Gervautz, M., Traxler, C.: Representation and realistic rendering of natural phenomena with cyclic CSG graphs. Vis. Comput. 12(2), 62–74 (1996)

    Google Scholar 

  6. Kunz, H., Miller, P.: NVIDIA® SceniX scene management engine. First official version, 4 Aug. 2009. Available from: http://developer.nvidia.com/object/scenix-home.html (accessed February 11, 2011)

  7. Lintermann, B., Deussen, O.: A modelling method and user interface for creating plants. Comput. Graph. Forum 17(1), 73 (1998)

    Article  Google Scholar 

  8. Mendez, E., Schall, G., Havemann, S., Junghanns, S., Fellner, D., Schmalstieg, D.: Generating semantic 3D models of underground infrastructure. IEEE Comput. Graph. Appl. 28(3), 48–57 (2008)

    Article  Google Scholar 

  9. Reenskaug, T.: Models–views–controllers. XEROX PARC tech. note, 19 Dec. 1979. Available from: http://folk.uio.no/trygver/themes/mvc/mvc-index.html (accessed February 11, 2011)

  10. Rohlf, J., Helman, J.: Iris performer: a high performance multiprocessing toolkit for real-time 3d graphics. In: SIGGRAPH ’94: Proceedings of the 21st Annual Conference on Computer Graphics and Interactive Techniques, New York, NY, USA, 1994, pp. 381–394. ACM, New York (1994)

    Chapter  Google Scholar 

  11. Reitmayr, G., Schmalstieg, D.: Flexible parametrization of scene graphs. In: Virtual Reality Conference, IEEE, pp. 51–58 (2005)

    Google Scholar 

  12. Strauss, P.S., Carey, R.: An object-oriented 3d graphics toolkit. In: SIGGRAPH ’92: Proceedings of the 19th Annual Conference on Computer Graphics and Interactive Techniques, New York, NY, USA, 1992, pp. 341–349. ACM, New York (1992)

    Chapter  Google Scholar 

  13. Streeting, S., et al.: Ogre3d: Object-oriented graphics rendering engine. First official version, Feb. 2005. Available from: http://www.ogre3d.org/wiki/index.php/ (accessed February 11, 2011)

  14. Schmalstieg, D., Gervautz, M.: Modeling and rendering of outdoor scenes for distributed virtual environments. In: VRST ’97: Proceedings of the ACM Symposium on Virtual Reality Software and Technology, New York, NY, USA, 1997, pp. 209–215. ACM, New York (1997)

    Chapter  Google Scholar 

  15. Voss, G., Behr, J., Reiners, D., Roth, M.: A multi-thread safe foundation for scene graphs and its extension to clusters. In: EGPGV ’02: Proceedings of the Fourth Eurographics Workshop on Parallel Graphics and Visualization, Aire-la-Ville, Switzerland, 2002, pp. 33–37. Eurographics Association, Geneve (2002)

    Google Scholar 

  16. Wernecke, J.: The Inventor Mentor: Programming Object-Oriented 3D Graphics with Open Inventor, Release 2. Addison-Wesley, Boston (1993)

    Google Scholar 

  17. Zeleznik, B., Holden, L., Capps, M., Abrams, H., Miller, T.: Scene-graph-as-bus: collaboration between heterogeneous stand-alone 3-d graphical applications. In: Proceedings of Eurographics 2000, p. 200 (2000)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Robert F. Tobler.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Tobler, R.F. Separating semantics from rendering: a scene graph based architecture for graphics applications. Vis Comput 27, 687–695 (2011). https://doi.org/10.1007/s00371-011-0572-0

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00371-011-0572-0

Keywords

Navigation