Abstract
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.
Similar content being viewed by others
References
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)
Behr, J., Dähne, P., Roth, M.: Utilizing X3D for immersive environments. In: Web3D ’04 Proceedings, pp. 71–78. ACM, New York (2004)
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)
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)
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)
Döllner, J., Hinrichs, K.: A generic rendering system. IEEE Trans. Vis. Comput. Graph. 8(2), 99–118 (2002)
Duval, T., Fleury, C.: PAC-C3D: a new software architectural model for designing 3D collaborative virtual environments. In: ICAT 2011. VRSJ (2011)
Fraunhofer IGD: Instant Reality Framework (2012). http://www.instantreality.org
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)
Nickolls, J., Buck, I., Garland, M., Skadron, K.: Scalable parallel programming with CUDA. Queue 6(2), 40–53 (2008)
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)
Pharr, M., Humphreys, G.: Physically Based Rendering: from Theory to Implementation. Morgan Kaufmann, San Mateo (2004)
Reiners, D., Voß, G., Behr, J.: OpenSG: basic concepts. In: 1. OpenSG Symposium (2002). http://www.opensg.org/
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)
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)
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)
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)
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)
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)
Woo, M., Neider, J., Davis, T., Shreiner, D.: OpenGL Programming Guide: the Official Guide to Learning OpenGL, 3rd edn. Addison-Wesley, Reading (1999)
Acknowledgements
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.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Schwenk, K., Voß, G., Behr, J. et al. Extending a distributed virtual reality system with exchangeable rendering back-ends. Vis Comput 29, 1039–1049 (2013). https://doi.org/10.1007/s00371-013-0836-y
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00371-013-0836-y