Distributed Rendering for Video Games via Object Streaming

Propelled by the growing availability of broadband connection in recent years, the gaming industry is now devoting a considerable amount of resources and investments in online and cloud gaming. In legacy online gaming, the gaming experience is usually provided with the support of remote servers, and online players rely on their local PCs or consoles, which hold a local copy of all the content (assets) and must follow some minimum requirements in hardware and software specifications. Whereas, on cloud gaming, intensive computational tasks are almost completely offloaded to dedicated servers: video frames are rendered on the remote machine, encoded and sent to the players as a video stream. This approach soften the need for updated and powerful devices, but it suffers from all the limitations and problems inherent to multimedia real-time streaming. In this paper we explore an hybrid approach between a (video) streaming-based cloud gaming and the traditional approach where all assets are local to the player. We propose a solution where the rendering pipeline is split between server and client. In this distributed architecture, the server manages most of the game scene description, runs the game simulation, performs the first segment of the graphics pipeline's application stage, and finally sends a stream of pre-processed graphical objects to the client, which performs the final rendering steps. The proposed approach reduces the computational burden on the server, which is not required to perform rendering, improving scalability when compared with cloud gaming solutions based on video streaming.

[1]  B. Bellalta,et al.  Cloud-gaming: Analysis of Google Stadia traffic , 2020, Comput. Commun..

[2]  Luca Vassio,et al.  A network analysis on cloud gaming: Stadia, GeForce Now and PSNow , 2020, Network.

[3]  Peter Garraghan,et al.  A Cloud Gaming Framework for Dynamic Graphical Rendering Towards Achieving Distributed Game Engines , 2020, HotCloud.

[4]  Wei Cai,et al.  A Survey on Cloud Gaming: Future of Computer Games , 2016, IEEE Access.

[5]  Claudio E. Palazzi,et al.  SMASH: A distributed game engine architecture , 2016, 2016 IEEE Symposium on Computers and Communication (ISCC).

[6]  Li Lin,et al.  LiveRender: A Cloud Gaming System Based on Compressed Graphics Streaming , 2014, IEEE/ACM Transactions on Networking.

[7]  Dario Maggiorini,et al.  About Game Engines and Their Future , 2015, IoT 360.

[8]  Mirko Suznjevic,et al.  QoE and Latency Issues in Networked Games , 2015 .

[9]  Cheng-Hsin Hsu,et al.  On the Quality of Service of Cloud Gaming Systems , 2014, IEEE Transactions on Multimedia.

[10]  Jason Gregory,et al.  Game Engine Architecture , 2009 .

[11]  Hongbin Zha,et al.  Streaming transmission of point-sampled geometry based on view-dependent level-of-detail , 2003, Fourth International Conference on 3-D Digital Imaging and Modeling, 2003. 3DIM 2003. Proceedings..

[12]  Leif Kobbelt,et al.  Streaming 3D geometry data over lossy communication channels , 2002, Proceedings. IEEE International Conference on Multimedia and Expo.

[13]  Eric Haines,et al.  Real-time rendering , 2018 .