I recently had the pleasure of trying out both of the new cloud-based gaming services, OnLive and Gaikai. My expectations for their functionality were really quite low. Horrible input lag. Awful video and audio quality. Those are the sorts of issues I expected would be bothering me to no end, solidifying my preconception that cloud-based services were a good fit for web backends but had no place in gaming.
After using the services, I changed my tune. OnLive and Gaikai are a clear vision of the future of game content delivery. Take a moment to give one of them a try if you haven’t already. OnLive is the more mature of the two services.
For those of you who don’t know what these systems are all about, both services essentially run games on their server farms and then send you a live stream of the video/audio that their computers are generating. The input you provide on your computer is sent to their server, the game updates, and it sends you back the next frame of video. It’s a throw back to computing in the 60s and 70s; a mainframe computer does the heavy lifting and your dumb terminal simply deals with input and output.
Input latency for most types of games was negligible. This is what I thought was going to be most painful element of cloud gaming but both systems in their current state feel great. There is no doubt that competitive games like first person shooters or fighting games are still best played off the cloud. On the other hand, I was surprised that all third person action games felt just fine even with the added latency of an Internet round-trip. For most types of games, input latency isn’t a problem.
Video and audio quality were much better than I expected, though not perfect. Depending on your connection to the cloud servers, video quality ranges from just ok to abysmal. On a good connection the compression artifacts were ignorable, though video quality zealots will not be happy. If your Internet connection is slow or flaky you will get a much worse experience in comparison to playing locally. That said, my modest home connection, an AT&T DSL connection that runs at less than 5 Mbps downstream, had little problem with the load. As Internet connectivity speeds increase, I’m confident video and audio quality will improve.
Switching from a consumer’s perspective to a developer’s, there is a lot to like. I won’t pretend to know all the technical details of OnLive or Gaikai but I can extrapolate a bit and imagine what they could end up looking like in the future. There are four areas that have me particularly excited.
1. Console-like fixed hardware platform
Let’s assume all the games are running on cloud-based virtual machines (VMs). When you ship your game, you define what hardware you want it to run on, ensuring that the level of quality is high for every player of your game. Just as if you had shipped it on the consoles of today.
2. Hardware platforms can be incrementally improved at any time without bothering players
If a great new CPU or GPU is released, the cloud service provider can incorporate it into their server farm. Players don’t need to buy PC upgrades or new consoles.
3. PC as target platform
Instead of building games for console platforms that start out with an immature set of tools and APIs, a new learning curve for hardware specific quirks, and other assorted growing pains, developers would only need to target the PC. The PC is a highly mature platform with a lot of fantastic development tools. Now that the pain of trying to ship on an extensive list of hardware configurations is eliminated, the classic PC pain area, it feels like a no-brainer to switch off of consoles and back onto PCs.
4. With no extra work, ship on any platform that has an Internet connection and supports your input controls
PC, Mac, Linux, iPhone, iPad, Android, set-top boxes like the Roku or iTV, hell, your TV via embedded software. All of these devices have Internet connections. As long as they have an input mechanism that supports your game, you can ship on these platforms. This is fantastic for getting your games in the hands of as many potential fans as possible.
If the cloud technology continues to improve in the direction I think it will these changes will change the way games are built.
Consider the upcoming PlayStation Vita, a complex piece of mobile hardware that will be released soon. It looks great for gaming, with an ideal control layout and powerful hardware. Now imagine it as a cloud-gaming dumb terminal instead. The challenge of pushing CPU/GPU performance while fighting against heat and battery life with highly complex hardware would be eliminated, making the device extremely cheap to manufacture. Players could purchase one for perhaps $50 or less. You would be able to play super high-end games at any time on the go. Imagine playing Uncharted 3 or the latest Call of Duty at full quality on your little piece of mobile hardware. Incredible.
If I was a platform provider like Sony or Microsoft I would be seriously considering what this shift could mean for business. Instead of shipping hardware platforms to consumers and developers, imagine instead a PlayStation service, where Sony’s best games are hosted. As a gamer you can access it from a multitude of devices at any time, from any Internet connection in the world. That is a fantastic value proposition for the consumer.
I think it’s obvious that Internet streaming is already taking over as the predominant method of delivery for music and video. Services like Netflix, Hulu, Spotify, Amazon, and iTunes offer a plethora of on-demand streaming content. I don’t see any reason why games won’t be next and I’m very excited about the possibilities.