“The cloud” is a term that has been thrown around in tech industries a lot over the last few years, and has even crept it’s way in to gaming a little to date as well – but with the announcement of the Xbox One it’s something that we are going to be hearing a lot more of. So I wanted to call out a bit about what exactly the cloud is, and what it can mean for us as gamers and why it’s got the potential to make games amazing.
The term ‘the cloud’ basically refers to a bunch of servers or other computers sitting somewhere in the internet that are providing a service of some description to other devices. It’s seen a rise in technology related industries of late as it gets used a lot to process heavy computation and data loads. For example, if I have a massive amount of data to perform calculation on, would I happen quicker with the computers I have here, or can I send the data elsewhere to have it done then have the result sent back? In that scenario, the “elsewhere” is the part that is referred to as the cloud.
If you have an Xbox 360 and are connected to the internet currently you will no doubt have seen the “cloud storage” option when saving games. This is an example of using the cloud for storage, you save you games locally and they are backed up to ‘the cloud’ where they can be retrieved later on, on a different console or back on the same one if needed. This is a basic implementation of using the cloud to store data, which is common scenario that people can use it for.
But with the announcements around Xbox One, there is a lot that is going to change in the cloud as far as the Xbox is concerned. Firstly, Microsoft are making massive investments in the number of servers ‘in the cloud’ that run Xbox Live, jumping from 15,000 or so currently, to 300,000. This is going to mean that there is a lot more ‘grunt’ available in the cloud for developers to be able to take advantage of. Now I know, this all sounds terribly impressive and pointless at the same time, so let me explain some of the ways this sort of tech is being used in games today, as well as how I think it could be used in the future.
Today there are a lot of games across a range of devices that make use of the cloud to do heavy loading and complex stuff that doesn’t happen where the game is running (‘the client’). If you think of an MMO, all of the servers there are an example of gaming running in the cloud, where all the calculations about what enemies are doing is done on the servers and the results sent down to the client where you can see your sword ripping through those goblins. Basic board games that happen on multiple types of devices use the cloud to manage the game that both players are connecting to so everyone can see the same game and use the same data, so enabling a better multi-player experience across networks. Even games like Galactic Reign on Windows Phone use the cloud to do the heavy work of rendering nice videos of space combat. After you issue your commands they are sent to a server in the cloud where a nice quality video of the fight is rendered, and the result is sent back to your phone to watch, which looks way more impressive than what your phone could render on its own (at least not without draining your battery in minutes).
So what can developers look to do with the cloud with Xbox One? If you listened to the architecture briefing that Major Nelson was involved with there was some interesting discussion around this. Now we aren’t expecting to see our games played in the cloud and the video streamed to our devices (yet – that would be sweet though, but there is no way that’s gonna fly in a lot of countries just based on network bandwidth alone!), but there are things it can do to make our games better, and it comes down to being able to identify a workload as being related to a low latency (needing a quick or immediate response) or to a low latency task (something that can wait and be done in the background). So think about this scenario. You’re playing an RPG of some sort, and instead of throwing loading screens at you at the edge of every section while a new randomly generated section of the world is made to make your game experience unique your Xbox has actually sent the request out to the cloud to generate a new section of the map and bring that to your console in the background, where it is immediately available. Perhaps there could be a living world in your game that persists while you aren’t playing and your Xbox is off, but off in the cloud your game is continuing to do things and the world evolves and changes, ready for when you return to always find new things have happened when you were gone. Think about anything your Xbox would normally need some CPU time for in the background to calculate, now being sent elsewhere to be done – now that CPU time is free to do more locally. There is enormous potential for this platform going forward – especially when you consider that the cloud and keep getting bigger and more powerful without me needing to change my console, meaning it can get even better and do even more without me having to buy new hardware locally.
There are a lot of questions that still need to be asked around this though – how easy will it be for developers to make use of this? Will it cost us more as gamers to play games based on this, or will our Xbox Live subscription cover it? What about gamers who don’t have consoles connected to the internet, will they not be able to play these games or will they get degraded performance because of having to do it all locally? The details are all far from clear at this point – but I’m sure as we see E3 come around and the launch date of Xbox One get closer, we’ll see a lot more details about this new way of using the cloud to get more performance out of our games and our consoles.
What do you think though? Are you excited by the idea of the cloud being used in the gaming experience? Let us know in the comments what you think!