The Visual Computer

, Volume 29, Issue 10, pp 1039–1049 | Cite as

Extending a distributed virtual reality system with exchangeable rendering back-ends

Techniques, applications, experiences
  • Karsten SchwenkEmail author
  • Gerrit Voß
  • Johannes Behr
  • Yvonne Jung
  • Max Limper
  • Pasquale Herzig
  • Arjan Kuijper
Original Article


We present an approach to integrate multiple rendering back-ends under a common application layer for distributed systems. The primary goal was to find a practical and nonintrusive way to use potentially very different renderers in heterogeneous computing environments without impairing their strengths and without burdening the back-ends or the application with details of the cluster environment. Our approach is based on a mediator layer that handles multithreading, clustering, and the synchronization between the application’s and the back-end’s scene. We analyze the proposed approach with an implementation for a state-of-the-art distributed VR/AR system. In particular, we present two case studies and an example application.


Distributed/network graphics Virtual reality 



The Buddha model was provided by the Stanford 3D Scanning Repository; the Sponza scene was provided by Crytek GmbH and Marko Dabrovic; the Powerplant model was provided by the GAMMA research group at UNC; the 777 model was provided by Boeing. We would also like to thank Jens Keil for the photographs in Fig. 1.


  1. 1.
    Arcila, T., Allard, J., Ménier, C., Boyer, E., Raffin, B.: FlowVR: a framework for distributed virtual reality applications. In: Journees de l’AFRV (2006) Google Scholar
  2. 2.
    Behr, J., Dähne, P., Roth, M.: Utilizing X3D for immersive environments. In: Web3D ’04 Proceedings, pp. 71–78. ACM, New York (2004) CrossRefGoogle Scholar
  3. 3.
    Behr, J., Jung, Y., Keil, J., Drevensek, T., Eschler, P., Zöllner, M., Fellner, D.W.: A scalable architecture for the HTML5/X3D integration model X3DOM. In: Web3D ’10 Proceedings, pp. 185–193. ACM, New York (2010) Google Scholar
  4. 4.
    Berthelot, R.B., Royan, J., Duval, T., Arnaldi, B.: Scene graph adapter: an efficient architecture to improve interoperability between 3D formats and 3D applications engines. In: Web3D ’11 Proceedings, pp. 21–29. ACM, New York (2011) Google Scholar
  5. 5.
    Brüderlin, B., Heyer, M., Pfützner, S.: Interviews3D: a platform for interactive handling of massive data sets. IEEE Comput. Graph. Appl. 27, 48–59 (2007) CrossRefGoogle Scholar
  6. 6.
    Döllner, J., Hinrichs, K.: A generic rendering system. IEEE Trans. Vis. Comput. Graph. 8(2), 99–118 (2002) CrossRefGoogle Scholar
  7. 7.
    Duval, T., Fleury, C.: PAC-C3D: a new software architectural model for designing 3D collaborative virtual environments. In: ICAT 2011. VRSJ (2011) Google Scholar
  8. 8.
    Fraunhofer IGD: Instant Reality Framework (2012).
  9. 9.
    Frey, S., Ertl, T.: PaTraCo: a framework enabling the transparent and efficient programming of heterogeneous compute networks. In: EGPGV ’10 Proceedings, pp. 131–140. Eurographics Association, Aire-la-Ville, Geneva (2010) Google Scholar
  10. 10.
    Nickolls, J., Buck, I., Garland, M., Skadron, K.: Scalable parallel programming with CUDA. Queue 6(2), 40–53 (2008) CrossRefGoogle Scholar
  11. 11.
    Parker, S.G., Bigler, J., Dietrich, A., Friedrich, H., Hoberock, J., Luebke, D., McAllister, D., McGuire, M., Morley, K., Robison, A., Stich, M.: OptiX: a general purpose ray tracing engine. ACM Trans. Graph. 29, 66:1–66:13 (2010) CrossRefGoogle Scholar
  12. 12.
    Pharr, M., Humphreys, G.: Physically Based Rendering: from Theory to Implementation. Morgan Kaufmann, San Mateo (2004) Google Scholar
  13. 13.
    Reiners, D., Voß, G., Behr, J.: OpenSG: basic concepts. In: 1. OpenSG Symposium (2002). Google Scholar
  14. 14.
    Rubinstein, D., Georgiev, I., Schug, B., Slusallek, P.: RTSG: Ray tracing for X3D via a flexible rendering framework. In: Web3D ’09 Proceedings, pp. 43–50. ACM, New York (2009) Google Scholar
  15. 15.
    Schwenk, K., Voß, G., Behr, J.: A system architecture for flexible rendering back-ends in distributed virtual reality applications. In: Proceedings of Cyberworlds 2012, pp. 7–14 (2012) CrossRefGoogle Scholar
  16. 16.
    Staadt, O.G., Walker, J., Nuber, C., Hamann, B.: A survey and performance analysis of software platforms for interactive cluster-based multi-screen rendering. In: SIGGRAPH ASIA 2008 Courses, pp. 41:1–41:10. ACM, New York (2008) Google Scholar
  17. 17.
    Steinicke, F., Ropinski, T., Hinrichs, K.: A generic virtual reality software system’s architecture and application. In: ICAT ’05 Proceedings, pp. 220–227. ACM, New York (2005) CrossRefGoogle Scholar
  18. 18.
    Voß, G., Behr, J., Reiners, D., Roth, M.: A multi-thread safe foundation for scene graphs and its extension to clusters. In: EGPGV ’02 Proceedings, pp. 33–37. Eurographics Association, Aire-la-Ville, Geneva (2002) Google Scholar
  19. 19.
    Voß, G., Reiners, D.: Towards a flexible back-end for scenegraph-based rendering systems. In: GRAPHITE ’06 Proceedings, pp. 303–309. ACM, New York (2006) Google Scholar
  20. 20.
    Woo, M., Neider, J., Davis, T., Shreiner, D.: OpenGL Programming Guide: the Official Guide to Learning OpenGL, 3rd edn. Addison-Wesley, Reading (1999) Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Karsten Schwenk
    • 1
    • 2
    Email author
  • Gerrit Voß
    • 3
  • Johannes Behr
    • 1
  • Yvonne Jung
    • 1
  • Max Limper
    • 1
    • 2
  • Pasquale Herzig
    • 1
  • Arjan Kuijper
    • 1
    • 2
  1. 1.Fraunhofer IGDDarmstadtGermany
  2. 2.TU DarmstadtDarmstadtGermany
  3. 3.Fraunhofer IDM@NTUNTUSingaporeSingapore

Personalised recommendations