Abstract
Clusters of PCs are widely employed in multi-screen immersive virtual reality systems. While this allows reducing the realization costs, it leds to an increase of complexity on the software side, since they require the development of distributed applications. Over the years, many frameworks supporting cluster rendering have been proposed, but none has established itself as the de-facto standard for immersive virtual reality application development. A new trend that is taking place consists in adding cluster-rendering support to one of the many freely available 3D engines. In this paper, we propose a convenient method to develop a lightweight distributed scene graph on top of a generic graphics engine. In particular, we describe the main mechanisms and design choices behind “Moka”, a library for the development for cluster-based virtual reality applications. We also present “Caffeine”, a virtual reality molecular visualizer based on the Moka library.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Cruz-Neira, C., Sandin, D.J., DeFanti, T.A.: Surround-screen Projection-based Virtual Reality: The Design and Implementation of the CAVE. In: Proceedings of the 20th Annual Conference on Computer Graphics and Interactive Techniques, pp. 135–142. ACM, New York (1993)
Steed, A., Oliveira, M.F.: Networked Graphics: Building Networked Games and Virtual Environments. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA (2009)
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. In: Proceedings of the 29th Annual Conference on Computer Graphics and Interactive Techniques, pp. 693–702. ACM, New York (2002)
Raffin, B., Soares, L., Ni, T., Ball, R., Schmidt, G.S., Livingston, M.A., Staadt, O.G., May, R.: PC Clusters for Virtual Reality. In: Virtual Reality Conference, pp. 215–222 (2006)
Guimarães, M.P., Bressan, P.A., Zuffo, M.K.: Frame lock synchronization for multiprojection immersive environments based on pc graphics clusters. In: Proocedings of the 5th SBC Symposium on Virtual Reality (2002)
RakNet 4. http://www.jenkinssoftware.com/
ReplicaNet. http://www.replicanet.com/
Internet Communications Engine (Ice). http://www.zeroc.com/
Collage. http://www.libcollage.net/
Bierbaum, A., Just, C., Hartling, P., Meinert, K., Baker, A., Cruz-Neira, C.: VR Juggler: a virtual platform for virtual reality application development. In: 2001 Proceedings of the IEEE Virtual Reality, pp. 89–96 (2001)
Allard, J., Gouranton, V., Lecointre, L., Melin, E., Raffin, B.: Net Juggler and SoftGenLock: Running VR Juggler with Active Stereo and Multiple Displays on a Commodity Component Cluster. In: Proceeding of IEEE Virtual Reality Conference 2002, pp. 273–274 (2002)
Bierbaum, Aron, Hartling, Patrick, Morillo, Pedro, Cruz-Neira, Carolina: Implementing Immersive Clustering with VR Juggler. In: Gervasi, Osvaldo, Gavrilova, Marina L., Kumar, Vipin, Laganá, Antonio, Lee, Heow Pueh, Mun, Youngsong, Taniar, David, Tan, Chih Jeng Kenneth (eds.) ICCSA 2005. LNCS, vol. 3482, pp. 1119–1128. Springer, Heidelberg (2005)
VR Juggler: The Programmer’s Guide - Version 3.0. http://vrjuggler.org
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, New York (2001)
Carrozzino, M., Tecchia, F., Bacinelli, S., Cappelletti, C., Bergamasco, M.: Lowering the Development Time of Multimodal Interactive Application: The Real-life Experience of the XVR Project. In: Proceedings of the 2005 ACM SIGCHI International Conference on Advances in Computer Entertainment Technology, pp. 270–273. ACM, New York (2005)
Hesina, G., Schmalstieg, D., Furhmann, A., Purgathofer, W.: Distributed Open Inventor: A Practical Approach to Distributed 3D Graphics. In: Proceedings of the ACM Symposium on Virtual Reality Software and Technology. pp. 74–81. ACM, New York (1999)
Kuck, R., Wind, J., Riege, K., Bogen, M.: Improving the AVANGO VR/AR Framework - Lessons Learned. Virtuelle und Erweiterte Realität, 209–220 (2008)
Reiners, D.: OpenSG: A scene graph system for flexible and efficient realtime rendering for virtual and augmented reality applications (2002)
Roth, M., Voss, G., Reiners, D.: Multi-threading and clustering for scene graph systems. Computers & Graphics. 28, 63–66 (2004)
Schaeffer, B., Goudeseune, C.: Syzygy: native PC cluster VR. In: 2003 Proceedings of the IEEE Virtual Reality, pp. 15–22 (2003)
UNIGINE Corp.: Unigine Engine. http://unigine.com
i’m in VR: MiddleVR for Unity. http://www.imin-vr.com
Unity Technologies: Unity. http://unity3d.com
OpenSceneGraph. Version 3.1. http://www.openscenegraph.org
OGRE (Object-Oriented Graphics Rendering Engine). http://www.ogre3d.org
Oculus VR Inc.: Oculus Rift - Virtual Reality Headset for 3D Gaming. http://www.oculusvr.com/
Qt Project. http://qt-project.org/
Salzman, L.: ENet Reliable UDP networking library
G-Truc Creation: OpenGL Mathematics (GLM). http://glm.g-truc.net/
Cube. http://cubeengine.com
Kooima, R.: Generalized Perspective Projection (2008). http://csc.lsu.edu/~kooima/articles/genperspective/
Tanaka, H., Kato, K., Yamashita, E., Sumizawa, T., Zhou, Y., Yao, M., Iwasaki, K., Yoshimura, M., Tsukihara, T.: The Structure of Rat Liver Vault at 3.5 Angstrom Resolution. Science 323, 384–388 (2009)
Toledo, R., Levy, B.: Extending the graphic pipeline with new GPU-accelerated primitives. In: 24th International gOcad Meeting, Nancy, France (2004)
Sigg, C., Weyrich, T., Botsch, M., Gross, M.: GPU-based ray-casting of quadratic surfaces. In: Proceedings of the 3rd Eurographics/IEEE VGTC Conference on Point-Based Graphics, pp. 59–65. Eurographics Association (2006)
Tarini, M., Cignoni, P., Montani, C.: Ambient Occlusion and Edge Cueing for Enhancing Real Time Molecular Visualization. IEEE Transactions on Visualization and Computer Graphics 12, 1237–1244 (2006)
Chavent, M., Vanel, A., Tek, A., Levy, B., Robert, S., Raffin, B., Baaden, M.: GPU-accelerated atom and dynamic bond visualization using hyperballs: A unified algorithm for balls, sticks, and hyperboloids. Journal of Computational Chemistry 32, 2924–2935 (2011)
Bagur, P.D., Shivashankar, N., Natarajan, V.: Improved Quadric Surface Impostors for Large Bio-molecular Visualization. In: Proceedings of the Eighth Indian Conference on Computer Vision, Graphics and Image Processing, pp. 33:1–33:8. ACM, New York (2012)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Salvadori, A., Brogni, A., Mancini, G., Barone, V. (2014). Moka: Designing a Simple Scene Graph Library for Cluster-Based Virtual Reality Systems. In: De Paolis, L., Mongelli, A. (eds) Augmented and Virtual Reality. AVR 2014. Lecture Notes in Computer Science(), vol 8853. Springer, Cham. https://doi.org/10.1007/978-3-319-13969-2_25
Download citation
DOI: https://doi.org/10.1007/978-3-319-13969-2_25
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-13968-5
Online ISBN: 978-3-319-13969-2
eBook Packages: Computer ScienceComputer Science (R0)