Description and Performance Analysis of a Distributed Rendering Architecture for Virtual Environments

  • Authors:
  • Giuseppe Marino;Davide Vercelli;Franco Tecchia;Paolo Simone Gasparello;Massimo Bergamasco

  • Affiliations:
  • -;-;-;-;-

  • Venue:
  • ICAT '07 Proceedings of the 17th International Conference on Artificial Reality and Telexistence
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Complex Virtual Environments applications may require computational resources exceeding the capabilities of a single machine. Our system, called "XVR Network Renderer", allows rendering load to be distributed throughout a cluster of machines operating concurrently. The proposed solution consists in a set of software modules structured as a single-master multiple-slaves architecture. XVR is a development environment that allows rapid development of Virtual Environments applications. The master software intercepts all the OpenGL API calls performed by any XVR application, without requiring any code to be added or modified. The graphical commands are then re-executed individually by the slave clients. Each slave is typically configured to manage only a subset of the whole virtual context. Our system exploits the tight integration with the underlying XVR scene-graph manager at its own advantage, providing additional features other than the mere virtualization of a high resolution OpenGL context, such as head tracking, GLSL shaders, and the ability to insert (and intercept) \placemarkers" inside the broadcast OpenGL data stream. Finally, the system can be configured to work with a wide range of complex visualization setups, automatically handling stereoscopy, correct perspective correction, overlapping images and other common problems, without ever changing the code of the original application. In this work we describe the proposed architecture and we discuss the results of our performance analysis.