Mar 3, 2010

Thoughts on Cloud Gaming

So it looks like cloud gaming service OnLive is getting more popularity.  I thought about this whole cloud gaming stuff while I was in shower this morning and I became to wonder what types of services can be on cloud.

Apparently OnLive is like this.  You have your controller at home.  Your controller input is sent to OnLive server.  Video and audio are streamed back to you.  So the only data packages transfered between you and the cloud are

  • controller input (very small data)
  • video (basically screen resolution x frames per second / compression magic)
  • and audio (sampling rate x bit per sample x number of channels / compression magic ).

So this is what determines if a cloud gaming service is viable or not:

  • Amount of data sent back and forth is well must be under what your internet connection can handle
  • Network latency should be not noticeable

Then what other cloud gaming services can we do?  Apparently OnLive is running the whole game on their side and stream only audio/video.  But it might be possible to run a very specific component of a game running on cloud.

How about physics?  Can we run very simple physics on your local gaming console, while running more complicated physics on the cloud?  Then if you are offline or can't get the result you want from the cloud in timely manner, you will just rely on your simple physics running on your own console.  On the other hand, if you can get all the information from your cloud physics server on time, you can use it and make your games look much better?

Maybe there might be too much data to be transfered for this physics system.  We might come up with really nice compression for this. (as if we did for audio/video)  No matter what I feel like there are a lot of small things we can run on the cloud.

Edit(June 30th, 2010):


  1. What you are describing is a system more like Epic's Network replication, where the server maintains the game and everything, but anything that the client needs to see and the server doesn't care about happens on the client only. It also uses some predictive movement of actors and then uses the information sent from the server to verify or fix the prediction.

    The point of cloud gaming, like OnLive is that an old P3 with a crappy gfx card or even your TV hooked up to a video/audio stream decoder and a controller (much cheaper HW than a full blown computer) can handle games that are way past their capabilities.

  2. My thoughts were not far from OnLive: if your computer is not strong enough to run full-blown physics, get that going on clouds.

    After writing this post, I thought about it more. Something like post-processing would be totally viable. Since 2-way video-only streaming should be much cheaper than 1-way audio/video streaming.

  3. Some things to think about regarding Cloud gaming;

    The Cloud company has control of your data and your costs. While my fellow capitolists might argue that it is in the company's best interest to offer viable cost effective services to stay in business it might be that corporate bottom lines (money) are not concerned with customer loyalty. Companies are interested in -paying- customers, and non-thrifty ones at that. Thier systems can move against the customer's interests.

    Like this: You sign up to a game. You play that game for say a year. The Clouder wants to make the new year's bottom line prettier. They offer a new game. You sign up to a new game. Repeat several times. The Clouder sees not too many people play the original games. It's not cost effective. They delete your stuff by accidently shutting down the servers, support staff and losing your old game data. Wha-La profit. Their argument is valid: "We lose money on old unpopular games and we are in business." You can't argue point. You buy new game.

    To be fair, non-cloud-enabled online games often delete old unused accounts as well. To be fair again I have yet to come up with an alternative viable cost/market model for online gaming.

    1. never thought about that way.. I guess i'm just a programmer :) More things to think about! yay! :)