In Theory: Valve and OpenGL: is PC gaming coming to mobile?
Digital Foundry on how the Steam Machines are the first step in taking PC games to places Windows can't reach.
This week Valve hosted the Steam Developer Days in Seattle, where game creators got hands-on time with the Steam Machines and Valve's innovative new controller, while lectures covered topics as diverse as user-generated content, VR and game economies - as well as developing and coding for the Linux operating system and the OpenGL graphics API. This last element is crucial - not just for the success of the SteamOS and its accompanying hardware, but for the long-term expansion of Valve's gaming platform.
First, it's important to put the Steam Machines into context. The initial reveal at CES earlier this month didn't seem to impress too many gamers. The range of arguments pitched against the products revealed were many and varied: there were too many of them, they were over-priced, they were under-specced, they were ugly, there were few signs of the apparently necessary "consolification" of PC gaming beyond the already announced controller, and scant evidence of a "guiding force" from Valve in defining the new platform for the mainstream gamer.
In actual fact, what we are seeing here are the first fledgling steps of an entirely open gaming platform that will evolve into many different forms, with the living room console-style box just the first iteration of a post-Windows Steam system. It's not for Valve to decide what should or should not be a Steam Machine, it's up to the hardware manufacturers to do their best and let the market - the gamers - decide. Few, if any, of these machines will be commercially successful, but lessons will be learned and second-gen machines will be better, more powerful and inevitably cheaper. For its part, Valve has provided an operating system and the necessary controller, and as the agenda for the Steam Developer Days suggests, it's all about encouraging adoption of the Linux-based platform and the OpenGL graphics API.
But why? After all, the PC market as it is right now is clearly successful, and a massive majority of the computers shipped today have Windows pre-installed by default. The sudden leap in the capabilities of integrated graphics means that most modern computers can run just about any game you care to throw at them, even without a dedicated graphics card. There's an ecosystem in place that clearly works, so what is the point of moving game development to Linux and OpenGL?
"Divorcing Steam from Windows is the best chance Valve has in significantly growing its userbase, and the Steam Machines are just the first part of the plan."
From our perspective, the answer is remarkably straightforward: in the years to come, the PC and gaming markets will expand into places that Windows is ill-equipped to operate, and - crucially - where open platforms are already proven to dominate. In the short term, sticking with Windows is the safest bet for PC game developers but over the longer stretch, embracing open platforms - and the OpenGL graphics API in particular - makes better commercial sense.
Indeed, the demonstration of Nvidia's Tegra K1 chip at this year's CES was arguably more important for game developers than the reveal of the Steam Machines themselves. In essence, what we are looking at is an early preview of the radical expansion in gaming that Valve is laying the groundwork for right now. Tegra K1 is a remarkable product - a modern desktop graphics architecture (Kepler) downscaled into a mobile chip - offering more raw rendering power than Xbox 360 and PlayStation 3. Crucially, because it is desktop tech, it features compatibility with the exact same OpenGL API as its PC GeForce GPU siblings. That being the case, any existing Linux/OpenGL video game should be ripe for conversion onto the K1 platform - and all the other mobile graphics technologies that will follow.
Tegra K1 - the mobile GPU based on PC desktop tech
We saw a compelling practical example of this in action during Nvidia's CES keynote. Frozenbyte's Trine 2 - which we recently covered in its PlayStation 4 incarnation - was shown running on a prototype K1 tablet. We checked in with the developer who confirmed a native 720p presentation, a 30fps target frame-rate and the same quality settings as the PS4/PC version. In essence, we are witnessing an Android port of a PC title offering an experience that similar to the last-gen console versions - if not slightly better. Yet this isn't a "mobile game" in the conventional sense. To all intents and purposes, this is the Linux/OpenGL game recompiled for another platform. Potentially, that's very exciting.
"We're super excited about this too, basically the days of doing 'mobile ports' are over and that's good for us because we never really bothered with those - the compromises in graphics just weren't worth it," Frozenbyte's Joel Kinnunen told us.
"We [would] rather work on something new (or at least on platforms that are exciting to us, like PS4 recently). Now with Tegra K1 we can easily add those devices to our platform possibilities. Android is a piece of work for sure but we seem to be getting the hang of that little by little."
The demo is really impressive, but there are some frame-rate issues, and it's clear that Android itself needs to evolve to become more "game-friendly" to developers. At Nvidia's G-Sync reveal last November, we overheard John Carmack lamenting his inability to run certain code at 60Hz - not through any fault of his own but simply because of difficulties with the Android operating system. But on a larger scale, the arrival of K1 demonstrates that a convergence of some description between PC and mobile gaming is virtually inevitable. The parallels between Android and SteamOS are many: both use OpenGL as the graphics API of choice, both are open platforms, and as Frozenbyte has demonstrated with Tegra K1, the notion of mobile as a target for more technically ambitious PC-style games is now one step closer.
"The arrival of K1 demonstrates that a convergence between PC and mobile gaming is virtually inevitable. The parallels between Android and SteamOS are many: both use OpenGL as the graphics API of choice, both are open platforms."
However, all the signs point to Windows as nothing more than a bit player in the mobile market, automatically limiting the ability for Steam to expand beyond desktop and laptop PCs. Microsoft's efforts to break into the smartphone and tablet space have fallen well short, and it seems extremely unlikely that this scenario will change in the next few years. With Android so strongly established, the arguments for developers to shift from Windows/DirectX to Linux/Android and OpenGL look overwhelming in the longer term. But to be clear, we're talking about a process that is going to take years to evolve.
Right now, the power of Tegra K1 is the exception, not the norm, and there remains the issue of the control interface not being up to scratch, with touchscreens not best suited to traditional PC games. Gabe Newell has already put some thought into this - he sees the touchscreen as a transitional interface for mobile devices, that it's a work-in-progress that will be replaced with a finer, more granular interface within the next decade.
"When you start thinking about a platform, you have to address it. You have to address mobile. You have to look at what's going to happen post-tablet. If you look at the mouse and keyboard, it was stable for about 25 years. I think touch will be stable for about 10 years," he said.
"I do think you'll have bands on your wrists, and you'll be doing stuff with your hands... your hands are incredibly expressive. If you look at somebody playing a guitar versus somebody playing a keyboard, there's a far greater amount of data that you can get through the information that people convey through their hands than we're currently using... Touch is... it's nice that it's mobile. It's lousy in terms of symbol rate."
For the hardcore gaming purists who must use a joypad, doubtless there'll be new Nvidia Shield-like devices to fill the handheld void. Indeed, Nvidia has strongly hinted that K1 will be integrated into a Shield 2 device later this year. However, in the meantime, Valve's ambitions are rather more modest. There's another platform they're thinking about. And clearly, they're addressing it.
Fixed architecture consoles vs. an ever-evolving open platform
The recently revealed Steam Machines constitute phase one of the expansion of Valve's platform - taking PC gaming into the living room. But behind this relatively modest goal, Valve is laying the groundwork for long-term convergence. The initial machines may not be thrilling, but they're a necessary first step. It's early days right now, but in the next two or three years, the Steam Machines will compete head-on with Xbox One and PlayStation 4 - and the firm's ambitions won't stop there.
Arguably, the console platform holders have made things easier for Valve in that Xbox One and PlayStation 4 are so closely associated with off-the-shelf PC technology. The new Microsoft and Sony consoles are an impressive leap over their predecessors, but in terms of the raw technology, individual components (CPU, GPU) can be matched and surpassed by today's mid-range PC parts. The balance of power will shift as developers get to grips with more direct access to the consoles' hardware, but at the same time, PC tech will get more powerful and more cheaper year-on-year.
Take graphics card prices, for example. Competition between AMD and Nvidia has seen a recent collapse in GPU prices, to the point where a high-end GTX 770 has seen £100 slashed off its retail price in a matter of weeks, with price-cuts rippling down throughout the stack. This level of competition in combination with the relentless nature of Moore's Law can only mean good things for the SteamOS platform. This year's Steam Machines look expensive and uncompetitive, but what about next year? Or the year after? Suddenly the notion of a console-like PC that can easily outperform Xbox One and PS4 for the same price doesn't seem quite so outlandish.
"While the future of PC gaming will doubtless include convergence with mobile, SteamOS sees Valve laying the groundwork now with the Steam Machines' utilisation of OpenGL."
But more importantly, what if Steam offered must-have features that Microsoft and Sony couldn't? With smartphones and tablets able to host Steam titles, it's entirely plausible that your games catalogue could be portable between desktop, living room and mobile devices, with one purchase allowing you to play the same game wherever you want. On a platform level, all of this stuff - plus save-game sharing over Steam Cloud - is already built into the system, while all modern game engines are already designed to scale across a vast range of hardware. Obviously, the experience will be different between varying devices with different performance levels, but fundamentally, it will be the same game.
Clearly, Steam isn't the only platform looking to expand its reach. CES also hosted Sony's vision for the future, with PlayStation Now representing an alternative take on the notion of taking your gameplay anywhere via the utilisation of cloud streaming. The firm is betting on the immediacy of the experience to trump the issues the service is likely to face - specifically, image quality and input latency. But certainly, for the forseeable future, PlayStation Now's application outside of the home is likely to be limited in comparison to running native apps on your mobile device, although it's important to point that Valve too is actively researching a similar form of gameplay over IP, kicking off with its own take on the Remote Play concept, due to emerge from beta soon.
Last week, Eurogamer's Tom Bramwell talked about the Steam Machines as a long-term effort from Valve in protecting the open nature of the PC platform. But equally, it can be seen as a bet against Microsoft in its ability to deliver any kind of audience beyond the traditional desktop and laptop markets. In effect, Valve has identified Windows as a limiting factor in growing its business, and as PC market share diminishes in the face of ever-stronger competition from mobile devices, it makes perfect sense for Steam to embrace open platforms that have already proven their worth - now it's all about getting the games industry to follow suit.
And with the arrival of Tegra K1 and the ability for tablets to run what is in effect re-compiled PC software, we can't help but wonder just how long we'll have to wait until there's an Android version of the Steam client.