Skip to main content

OpenGL|D - An Alternative Approach to Multi-user Architecture

  • 502 Accesses

Part of the Lecture Notes in Computer Science book series (TCOMPUTATSCIE,volume 10830)


Synchronising state between multiple connected clients can be a challenging task. However, the need to carry this out is becoming much greater as a larger number of software packages are becoming collaborative across a network. Online multiplayer games in particular are already extremely popular but the synchronisation methods and architecture have largely remained the same. OpenGL|Distributed, presented here, aims to provide not only an alternative to this architecture allowing for a greatly simplified development pipeline, but also the opportunity for a number of additional features and design patterns. The architecture provided by OpenGL|D is such that no state information needs to be transferred between clients. Instead, the OpenGL API has been utilised as a platform agnostic protocol. This means that graphical calls can be streamed to each client rather than relying on manual synchronisation of application domain specific data. Initial test results are discussed, including performance evaluation using data from a number of small prototypes developed within a constrained 48-h timeframe. These results are compared and evaluated against a more traditional approach to network multiplayer by id Software’s QuakeWorld client. It should be noted that this article is an extended version of the work we published in the proceedings of the Cyberworlds 2017 conference [1].

This is a preview of subscription content, access via your institution.

Buying options

USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions


  1. Pedersen, K., Gatzidis, C., Tang, W.: OpenGL\(|\)D - a multi-user single state architecture for multiplayer game development. In: International Conference on Cyberworlds 2017, Chester, UK, September 2017

    Google Scholar 

  2. Laurens, P., Paige, R.F., Brooke, P.J., Chivers, H.: A novel approach to the detection of cheating in multiplayer online games. In: 12th IEEE International Conference on Engineering Complex Computer Systems (ICECCS 2007), pp. 97–106, July 2007

    Google Scholar 

  3. Wu, D., Xue, Z., He, J.: icloudaccess: cost-effective streaming of video games from the cloud with low latency. IEEE Trans. Circuits Syst. Video Technol. 24(8), 1405–1416 (2014)

    CrossRef  Google Scholar 

  4. Karachristos, T., Apostolatos, D., Metafas, D.: A real-time streaming games-on-demand system. In: Proceedings of the 3rd International Conference on Digital Interactive Media in Entertainment and Arts, DIMEA 2008, pp. 51–56. ACM, New York (2008).

  5. Färber, J.: Traffic modelling for fast action network games. Multimedia Tools Appl. 23(1), 31–46 (2004).

    CrossRef  Google Scholar 

  6. Stagner, A.R.: Unity Multiplayer Games. Packt Publishing Ltd., Birmingham (2013)

    Google Scholar 

  7. Matthews, B., Shaon, A., Bicarregui, J., Jones, C.: A framework for software preservation. Int. J. Digit. Curation 5(1), 91–105 (2010)

    CrossRef  Google Scholar 

  8. Microsoft, Introducing windows 10 s (2017). Accessed 20 Jan 2017

  9. Bassin, K., Santhanam, P.: Managing the maintenance of ported, outsourced, and legacy software via orthogonal defect classification. In: Proceedings of the IEEE International Conference on Software Maintenance, ICSM 2001, pp. 726–734 (2001)

    Google Scholar 

  10. Pellegrino, J.D., Dovrolis, C.: Bandwidth requirement and state consistency in three multiplayer game architectures. In: Proceedings of the 2nd Workshop on Network and System Support for Games, pp. 52–59. ACM (2003)

    Google Scholar 

  11. Wang, A.I., Jarrett, M., Sorteberg, E.: Experiences from implementing a mobile multiplayer real-time game for wireless networks with high latency. Int. J. Comput. Games Technol. 2009, 6:1–6:14 (2009)

    Google Scholar 

  12. Cronin, E., Filstrup, B., Kurc, A.R., Jamin, S.: An efficient synchronization mechanism for mirrored game architectures. In: Proceedings of the 1st Workshop on Network and System Support for Games, pp. 67–73. ACM (2002)

    Google Scholar 

  13. Baughman, N.E., Levine, B.N.: Cheat-proof playout for centralized and distributed online games. In: Proceedings of the Twentieth Annual Joint Conference of the IEEE Computer and Communications Societies, IEEE INFOCOM 2001, vol. 1, pp. 104–113. IEEE (2001)

    Google Scholar 

  14. Pedersen, K., Gatzidis, C., Northern, B.: Distributed deepthought: synchronising complex network multi-player games in a scalable and flexible manner. In: Proceedings of the 3rd International Workshop on Games and Software Engineering: Engineering Computer Games to Enable Positive, Progressive Change, GAS 2013, pp. 40–43. IEEE Press, Piscataway (2013).

  15. James, S.R., Gillam, B.D.: Network multiplayer game, 12 October 1999. US Patent 5,964,660

    Google Scholar 

  16. Sanglard, F.: Fabien sanglard’s website (2012). Accessed 20 Jan 2017

  17. Valgrind Developers: Valgrind memory debugger (2017). Accessed 20 Jan 2017

  18. Bulterman, D.C.A., van Liere, R.: Multimedia synchronization and UNIX. In: Herrtwich, R.G. (ed.) NOSSDAV 1991. LNCS, vol. 614, pp. 105–119. Springer, Heidelberg (1992).

    CrossRef  Google Scholar 

  19. Smed, J., Kaukoranta, T., Hakonen, H.: A review on networking and multiplayer computer games. Turku Centre for Computer Science (2002)

    Google Scholar 

  20. Smed, J., Kaukoranta, T., Hakonen, H.: Aspects of networking in multiplayer computer games. Electron. Libr. 20(2), 87–97 (2002)

    CrossRef  Google Scholar 

  21. id Software: FTE quake world (2017). Accessed 20 Oct 2017

  22. Cordeiro, D., Goldman, A., da Silva, D.: Load balancing on an interactive multiplayer game server. In: Kermarrec, A.-M., Bougé, L., Priol, T. (eds.) Euro-Par 2007. LNCS, vol. 4641, pp. 184–194. Springer, Heidelberg (2007).

    CrossRef  Google Scholar 

  23. Abdelkhalek, A., Bilas, A., Moshovos, A.: Behavior and performance of interactive multi-player game servers. Cluster Comput. 6(4), 355–366 (2003).

    CrossRef  Google Scholar 

  24. Abdelkhalek, A., Bilas, A.: Parallelization and performance of interactive multiplayer game servers. In: Proceedings of the 18th International Parallel and Distributed Processing Symposium, pp. 7–8, April 2004

    Google Scholar 

  25. Xylomenos, G., Polyzos, G.C.: TCP and UDP performance over a wireless LAN. In: Proceedings of the Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies, IEEE INFOCOM 1999, vol. 2, pp. 439–446, March 1999

    Google Scholar 

  26. NoMachine, Nomachine NX server (2017). Accessed 20 Jan 2017

  27. NVIDIA: NVIDIA gamestream: Play PC games on NVIDIA shield (2017). Accessed 20 Jan 2017

Download references

Author information

Authors and Affiliations


Corresponding author

Correspondence to Karsten Pedersen .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2018 Springer-Verlag GmbH Germany, part of Springer Nature

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Pedersen, K., Gatzidis, C., Tang, W. (2018). OpenGL|D - An Alternative Approach to Multi-user Architecture. In: Gavrilova, M., Tan, C., Sourin, A. (eds) Transactions on Computational Science XXXII. Lecture Notes in Computer Science(), vol 10830. Springer, Berlin, Heidelberg.

Download citation

  • DOI:

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-56671-8

  • Online ISBN: 978-3-662-56672-5

  • eBook Packages: Computer ScienceComputer Science (R0)