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):
- This Crytek's presentation also sees the potential of cloud rendering in coming years.