Multimedia Tools and Applications

, Volume 77, Issue 1, pp 347–361 | Cite as

Immersive and interactive virtual reality applications based on 3D web browsers

  • Marcelo de Paiva Guimarães
  • Diego Roberto Colombo Dias
  • José Hamilton Mota
  • Bruno Barberi Gnecco
  • Vinícius Humberto Serapilha Durelli
  • Luis Carlos Trevelin


This study explores the possibility of effectively using web-standard technologies (i.e., HTML5, JavaScript, WebGL, and WebRTC) to deploy full immersive and interactive virtual reality applications. These applications are based on computer clusters and run in multi-projection environments, such as CAVEs, Panoramas and Power Walls. Until recently, these applications were build using tailored solutions, such low-level libraries to distribute data. We discuss the modern-day web technology which allows these applications meet a multi-platform requirement. This paper also evaluates the communication and synchronization requirements of these applications that are traditionally the main bottleneck. As a proof-of-concept to show the feasibility of our study, we devised and implemented an immersive and interactive virtual reality application employing only web technologies. Our proof-of-concept runs on a miniCAVE environment with three displays and a 6-node cluster.


Virtual reality HTML5 JavaScript WebGL WebRTC Computer cluster 

Supplementary material


(MP4 2293 kb)


  1. 1.
    Abbasi A, Baroudi U (2012) Immersive environment: an emerging future of telecommunications. IEEE MultiMed 19(1):80. doi: 10.1109/MMUL.2012.7 CrossRefGoogle Scholar
  2. 2.
    Anthes C, Haffegee A, Heinzlreiter P, Volkert J (2005) A scalable network architecture for closely coupled collaboration. Computing and Informatics 24(1):31–51, zbMATHGoogle Scholar
  3. 3.
    Bergkvist A, B.D.C.J.C..N.A. (2015): Webrtc 1.0: Real-time communication between browsers:w3c editor’s draft. URL
  4. 4.
    Boukerche A, Shirmohammadi S, Hossain A (2006) Moderating simulation lag in haptic virtual environments. In: Simulation Symposium, 2006. 39th Annual, pp. 269–277. doi:  10.1109/ANSS.2006.31
  5. 5.
    Bues M, Blach R, Stegmaier S, H¨afner U, Hoffmann H, Haselberger F (2001) Towards a scalable high performance application platform for immersive virtual environments. In: Proceedings of the 7th Eurographics Conference on Virtual Environments & 5th Immersive Projection Technology, EGVE’01, pp. 165–174. Eurographics Association, Aire-la-Ville, Switzerland, Switzerland (2001). doi:  10.2312/EGVE/EGVE01/165-174
  6. 6.
    Chen L (2005) Effects of network characteristics on task performance in a desktop cve system. In: Advanced information networking and applications, 2005. AINA 2005. 19th International Conference on, vol. 1, pp. 821–826vol.1 (2005). doi:  10.1109/AINA.2005.171
  7. 7.
    Cruz-Neira C, Sandin DJ, DeFanti TA, Kenyon RV, Hart JC (1992) The cave: audio visual experience automatic virtual environment. Commun ACM 35:64–72. doi: 10.1145/129888.129892 CrossRefGoogle Scholar
  8. 8.
    Danchilla B (2012) Beginning WebGL for HTML5, 1st edn. Apress, BerkelyCrossRefGoogle Scholar
  9. 9.
    DeFanti TA, Leigh J, Renambot L, Jeong B, Verlo A, Long L, Brown M, Sandin DJ, Vishwanath V, Liu Q, Katz MJ, Papadopoulos P, Keefe JP, Hidley GR, Dawe GL, Kaufman I, Glogowski B, Doerr KU, Singh R, Girado J, Schulze JP, Kuester F, Smarr L (2009) The optiportal, a scalable visualization, storage, and computing interface device for the optiputer. Futur Gener Comput Syst 25(2):114–123. doi: 10.1016/j.future.2008.06.016, CrossRefGoogle Scholar
  10. 10.
    Drolet F, Mokhtari M, Bernier F, Laurendeau D (2009) A software architecture for sharing distributed virtual worlds. In: Virtual Reality Conference, 2009. VR 2009. IEEE, pp. 271–272 (2009). doi:  10.1109/VR.2009.4811050
  11. 11.
    Finkelstein S, Suma EA (2011) Astrojumper: motivating exercise with an immersive virtual reality exergame. Presence: Teleoper. Virtual Environ 20(1):78–92. doi: 10.1162/pres_a_00036 Google Scholar
  12. 12.
    Gnecco BB, de Paiva Guimaraes M, Zuffo MK (2003) Um framework para computação distribuída. In: Simpósio Brasileiro de Realidade Virtual. SBC, Ribeirão PretoGoogle Scholar
  13. 13.
    Guimaraes MP (2004) Um ambiente para o desenvolvimento de aplicações de realidade virtual baseadas em aglomerados gráficos. Ph.D. thesis, Universidade de São PauloGoogle Scholar
  14. 14.
    Hall D (2013) Ansible configuration management. Packt PublishingGoogle Scholar
  15. 15.
    Hemminger S: Network emulation with netemGoogle Scholar
  16. 16.
    Hendrix V, Benjamin D, Yao Y (2012) Scientific cluster deployment and recovery using puppet to simplify cluster management. Journal of Physics: Conference Series 396(4), 042,027 (2012). URL
  17. 17.
    Humphreys G, Eldridge M, Buck I, Stoll G, Everett M, Hanrahan P (2001) Wiregl: a scalable graphics system for clusters. In: Proceedings of the 28th Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH’01, pp. 129–140. ACM, New York, NY, USA (2001). doi:  10.1145/383259.383272
  18. 18.
    Humphreys G, Houston M, Ng R, Frank R, Ahern S, Kirchner PD, Klosowski JT (2002) Chromium: a stream-processing framework for interactive rendering on clusters. ACM Trans Graph 21(3):693–702. doi: 10.1145/566654.566639 CrossRefGoogle Scholar
  19. 19.
    Isakovic K, Dudziak T, K¨ochy K (2002) X-rooms. In: Proceedings of the Seventh International Conference on 3D Web Technology, Web3D’02, pp. 173– 177. ACM, New York, NY, USA (2002). doi:  10.1145/504502.504530
  20. 20.
    Jackson S (2015) Unity 3D UI essentials. Packt PublishingGoogle Scholar
  21. 21.
    Jamsa K (2013) Introduction to web development using HTML 5. Jones and Bartlett Publishers, Inc., USAGoogle Scholar
  22. 22.
    Kemeny A (2014) From driving simulation to virtual reality. In: Proceedings of the 2014 Virtual Reality International Conference, VRIC’14, pp. 32:1–32:5. ACM, New York, NY, USA (2014). doi:  10.1145/2617841.2620721
  23. 23.
    Kerger F (2010) OGRE 3D 1.7 Beginner’s guide. Packt PublishingGoogle Scholar
  24. 24.
    Kuhlen TW, Hentschel B (2014) Quo vadis cave: does immersive visualization still matter? IEEE Comput Graph Appl 34(5):14–21. doi: 10.1109/MCG.2014.97 CrossRefGoogle Scholar
  25. 25.
    Kuntz S (2015) Middlevr a generic vr toolbox. In: 2015 I.E. Virtual Reality (VR), pp. 391–392 (2015). doi:  10.1109/VR.2015.7223460
  26. 26.
    Li M, Buchthal S (2012) Advisory services in the virtual world: an empowerment perspective 12(1), 53–96. doi:  10.1007/s10660-012-9088-6
  27. 27.
    Lv Z, Li X, Zhang B, Wang W, Zhu Y, Hu J, Feng S (2016) Managing big city information based on webvrgis. IEEE Access 4:407–415. doi: 10.1109/ACCESS.2016.2517076 CrossRefGoogle Scholar
  28. 28.
    Lv Z, Yin T, Song H, Chen G (2016) Virtual reality smart city based on webvrgis. IEEE Internet Things J PP(99):1. doi: 10.1109/JIOT.2016.2546307 Google Scholar
  29. 29.
    Molnar S, Cox M, Ellsworth D, Fuchs H (1994) A sorting classification of parallel rendering. IEEE Comput Graph Appl 14(4):23–32. doi: 10.1109/38.291528 CrossRefGoogle Scholar
  30. 30.
    Moreau G (2013) Visual immersion issues in virtual reality: a survey. In: Proceedings of the 2013 26th Conference on Graphics, Patterns and Images Tutorials, SIBGRAPIT’13, pp. 6–14. IEEE Computer Society, Washington, DC, USA (2013). doi:  10.1109/SIBGRAPI-T.2013.9
  31. 31.
    Muhanna MA (2015) Virtual reality and the cave. J King Saud Univ Comput Inf Sci 27(3):344–361. doi: 10.1016/j.jksuci.2014.03.023 Google Scholar
  32. 32.
    Neto MP, Dias DRC, Trevelin LC, de Paiva Guimar˜aes M, Brega JRF (2015) Unity cluster package – dragging and dropping components for multi-projection virtual reality applications based on PC clusters. Springer International Publishing, Cham, pp 261–272. doi: 10.1007/978-3-319-21413-919 Google Scholar
  33. 33.
    Pacheco P (2011) An introduction to parallel programming, 1st edn. Morgan Kaufmann Publishers Inc., San FranciscoGoogle Scholar
  34. 34.
    Pedras BFV, Raposo A, Santos IHF (2013) Apprc: a framework for integrating mobile communication to virtual reality applications. In: Proceedings of the 12th ACM SIGGRAPH International Conference on Virtual-Reality Continuum and Its Applications in Industry, VRCAI’13, pp. 305–308. ACM, New York, NY, USA (2013). doi:  10.1145/2534329.2534374
  35. 35.
    Schaeffer B, Goudeseune C (2003) Syzygy: native pc cluster vr. In: Virtual reality, 2003. Proceedings. IEEE, pp. 15–22 (2003). doi  10.1109/VR.2003.1191116
  36. 36.
  37. 37.
    Soares LP, Zuffo MK (2004) Jinx: An x3d browser for vr immersive simulation based on clusters of commodity computers. In: Proceedings of the Ninth International Conference on 3D Web Technology, Web3D’04, pp. 79–86. ACM, New York, NY, USA (2004). doi:  10.1145/985040.985052
  38. 38.
    Steinbach E, Hirche S, Kammerl J, Vittorias I, Chaudhari R (2011) Haptic data compression and communication. IEEE Signal Process Mag 28(1):87–96. doi: 10.1109/MSP.2010.938753 CrossRefGoogle Scholar
  39. 39.
    Threejs – javascript 3d library (2015). URL
  40. 40.
    Tiwari D, Solihin Y (2012) Architectural characterization and similarity analysis of sunspider and google’s v8 javascript benchmarks. In: Proceedings of the 2012 I.E. International Symposium on Performance Analysis of Systems & Software, ISPASS’12, pp. 221–232. IEEE Computer Society, Washington, DC, USA (2012). doi:  10.1109/ISPASS.2012.6189228
  41. 41.
  42. 42.
    Wang Y, Li Z, Zhang W (2011) A fully distributed P2P communications architecture for network virtual environments. In: Wireless Communications, Networking and Mobile Computing (WiCOM), 2011 7th International Conference on, pp. 1–4 (2011). doi:  10.1109/wicom.2011.6040468
  43. 43.
    You Y, Sung MY (2008) Haptic data transmission based on the prediction and compression. In: Communications, 2008. ICC’08. IEEE International Conference on, pp. 1824–1828 (2008). doi  10.1109/ICC.2008.350

Copyright information

© Springer Science+Business Media New York 2016

Authors and Affiliations

  • Marcelo de Paiva Guimarães
    • 1
    • 2
  • Diego Roberto Colombo Dias
    • 3
  • José Hamilton Mota
    • 2
  • Bruno Barberi Gnecco
    • 4
  • Vinícius Humberto Serapilha Durelli
    • 2
    • 5
  • Luis Carlos Trevelin
    • 6
  1. 1.Federal University of São Paulo (UNIFESP)/Open University of Brazil (UAB)São PauloBrazil
  2. 2.Faculty Campo Limpo Paulista (Faccamp)Campo Limpo PaulistaBrazil
  3. 3.Federal University of São João del-Rei (UFSJ)São João del-ReiBrazil
  4. 4.Corollarium TechnologiesItapecerica da SerraBrazil
  5. 5.University of Sao Paulo (USP)São PauloBrazil
  6. 6.Federal University of São Carlos (UFSCar)São CarlosBrazil

Personalised recommendations