A Scalable Cluster-Rendering Architecture for Immersive Virtual Environments

  • Giovanni Avveduto
  • Franco Tecchia
  • Marcello Carrozzino
  • Massimo Bergamasco
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9768)


Complex virtual environments often require computational resources exceeding the capabilities of a single machine. Furthermore immersive visualization can exploit multiple displays fostering the needing of computational power. We hereby present a system, called XVR Network Renderer, allowing rendering load to be distributed throughout a cluster of workstations operating concurrently. The proposed solution consists in a set of software modules structured as a single-master multiple-slaves architecture. The master software intercepts all the graphical commands performed by an OpenGL application, without any modification of the source code. The commands are then streamed and executed individually by each slave client. The Network Renderer can be seen as a virtual OpenGL context with high capabilities. The system can be configured to work with a wide range of complex visualization setups, like CAVEs, automatically handling stereoscopy, performing perspective corrections and managing projection-related common problems. Any number of displays can be simultaneously managed by the cluster.


Cluster rendering Immersive virtual environments Visualization systems 


  1. 1.
    University of Minnesota: PowerWall. http://www.lcse.umn.edu/research/powerwall/powerwall.html. Accessed 21 Feb 2016
  2. 2.
    Cruz-Neira, C., Sandin, D.J., DeFanti, T.A., Kenyon, R.V., Hart, J.C.: The cave: audio visual experience automatic virtual environment. Commun. ACM 35(6), 64–73 (1992)CrossRefGoogle Scholar
  3. 3.
    Crockett, T.W.: An introduction to parallel rendering. Parallel Comput. 23(7), 819–843 (1997)CrossRefMATHGoogle Scholar
  4. 4.
    Molnar, S., Cox, M., Ellsworth, D., Fuchs, H.: A sorting classification of parallel rendering. IEEE Comput. Graph. Appl. 14(4), 23–32 (1994)CrossRefGoogle Scholar
  5. 5.
    Molnar, S., Eyles, J., Poulton, J.: Pixelflow: high-speed rendering using image composition. ACM SIGGRAPH Comput. Graph. 26, 231–240 (1992). ACMCrossRefGoogle Scholar
  6. 6.
    Humphreys, G., Eldridge, M., Buck, I., Stoll, G., Everett, M., Hanrahan, P.: Wiregl: a scalable graphics system for clusters. In: Proceedings of the 28th Annual Conference on Computer Graphics and Interactive Techniques, pp. 129–140. ACM (2001)Google Scholar
  7. 7.
    Humphreys, G., Houston, M., Ng, R., Frank, R., Ahern, S., Kirchner, P.D., Klosowski, J.T.: Chromium: a stream-processing framework for interactive rendering on clusters. ACM Trans. Graph. (TOG) 21(3), 693–702 (2002)CrossRefGoogle Scholar
  8. 8.
    Corrêa, W.T., Klosowski, J.T., Silva, C.T.: Out-of-core sort-first parallel rendering for cluster-based tiled displays. Parallel Comput. 29(3), 325–338 (2003)CrossRefGoogle Scholar
  9. 9.
    Stoll, G., Eldridge, M., Patterson, D., Webb, A., Berman, S., Levy, R., Caywood, C., Taveira, M., Hunt, S., Hanrahan, P.: Lightning-2: a high-performance display subsystem for pc clusters. In: Proceedings of the 28th Annual Conference on Computer Graphics and Interactive Techniques, pp. 141–148. ACM (2001)Google Scholar
  10. 10.
    Marino, G., Vercelli, D., Tecchia, F., Gasparello, P.S.: Description and performance analysis of a distributed rendering architecture for virtual environments. In: 17th International Conference on Artificial Reality and Telexistence, pp. 234–241. IEEE (2007)Google Scholar
  11. 11.
    Tecchia, F.: A flexible framework for wide-spectrum vr development. Presence 19(4), 302–312 (2010)CrossRefGoogle Scholar
  12. 12.
    Mortensen, J., Yu, I., Khanna, P., Tecchia, F., Spanlang, B., Marino, G., Slater, M.: Real-time global illumination for vr applications. IEEE Comput. Graph. Appl. 6, 56–64 (2008)CrossRefGoogle Scholar
  13. 13.
    Steed, A., Tecchia, F., Bergamasco, M., Slater, M., Steptoe, W., Oyekoya, W., Pece, F., Weyrich, T., Kautz, J., Friedman, D., et al.: Beaming: an asymmetric telepresence system. IEEE Comput. Graph. Appl. 6, 10–17 (2012)CrossRefGoogle Scholar
  14. 14.
    Pérez Marcos, D., Solazzi, M., Steptoe, W., Oyekoya, O., Frisoli, A., Weyrich, T., Steed, A., Tecchia, F., Slater, M., Sánchez-Vives, M.V.: A fully immersive set-up for remote interaction and neuro rehabilitation based on virtual body ownership. Front. Neurol. 3, 110 (2012)CrossRefGoogle Scholar
  15. 15.
    Normand, J.M., Spanlang, B., Tecchia, F., Carrozzino, M., Swapp, D., Slater, M.: Full body acting rehearsal in a networked virtual environment – a case study. Presence: Teleoperators Virtual Environ. 21(2), 229–243 (2012)CrossRefGoogle Scholar
  16. 16.
    Shreiner, D., Group, B.T.K.O.A.W., et al.: OpenGL Programming Guide: The Official Guide to Learning OpenGL Versions 3.0 and 3.1. Pearson Education, New Jersey (2009)Google Scholar
  17. 17.
    Marino, G., Gasparello, P.S., Vercelli, D., Tecchia, F., Bergamasco, M.: Network streaming of dynamic 3D content with on-line compression of frame data. In: 2010 IEEE Virtual Reality Conference (VR), pp. 285–286. IEEE (2010)Google Scholar
  18. 18.
    Hunt, J.W., MacIlroy, M.: An algorithm for differential file comparison. Computing science technical report. Bell Laboratories, New Jersey (1976). https://books.google.it/books?id=zJ2LMwAACAAJ Google Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Giovanni Avveduto
    • 1
  • Franco Tecchia
    • 1
  • Marcello Carrozzino
    • 1
  • Massimo Bergamasco
    • 1
  1. 1.Percro LaboratoryScuola Superiore Sant’AnnaPisaItaly

Personalised recommendations