Smart phones and tablets have never been more popular, but they pack puny computing power compared to the average desktop computer. Two companies hope to change this by connecting modestly powered portable devices to powerful Internet servers that perform intensive tasks on their behalf. This week, both these companies—OnLive, based in Palo Alto, California, and GameString, in Vancouver, Canada—demonstrated handheld gadgets running high-end games and other complex software.
Since launching last year, OnLive has used powerful servers to stream computer games to its subscribers’ PCs. It recently released a lightweight “microconsole” that brings the service to television sets, and it also has its sights set on portable devices. Yesterday it released an iPad app that uses the same technology to bring those PC games to Apple’s tablet. The action is relayed from the server to the app using compression algorithms that ensure quick transmission of data over a wireless connection and the Internet.
“Initially we are only offering the ability to watch other players who are logged into OnLive from a PC, because these games were not designed to run on a touchscreen,” says Steve Perlman, OnLive’s founder and CEO. “But I know that publishers are excited about it becoming possible to offer high-performance titles on a tablet, and we will work on that.” As soon as game developers release a game that can be operated with a finger rather than a keyboard and mouse, OnLive will make it playable on an iPad, he says.
GameString released its own demo video yesterday, of an Android smart phone being used to play the multiplayer game World of Warcraft (see video). The Android app was made using Adobe’s Air platform for web apps and a software toolkit created by Gamestring to help game developers make powerful games that run partly on a mobile device and partly on a cloud server.
Wireless networks, server hardware and software, and portable devices have all become sophisticated enough to enable a big shift in how games are delivered, says Chris Boothroyd, GameString’s founder and CEO. “They’re following music and movies—onto the Web,” he says.
Streaming a game is much more complex than streaming video or music, though. Video software typically “buffers” several seconds of footage ahead of what the viewer sees at any time, in case of connection problems. This can’t be done with games, because what happens in the next few seconds depends on the player’s present actions. Instead, compression has to be good enough to ensure that the data stream never falls behind long enough to affect gameplay.
OnLive’s engineers have developed algorithms that are tuned to a particular game, and even a particular user’s Internet connection. “The compression algorithm that we use can even vary from scene to scene,” says Perlman. “Darkness, detail, and the pattern of the 3-D motion in the frames all make a difference.” If data is lost in transmission, then OnLive’s software attempts to conceal the error by extrapolating from what is known, he says. All of that work is done by software running on remote servers-in the cloud. The software installed on a user’s device is very simple, sending little more than the coordinates of the user’s mouse and the timing of keyboard or button clicks.
The technology has applications outside gaming, says Perlman, who yesterday demonstrated a still-unfinished app that brings a full Windows 7 desktop to the iPad. “Everything works as if it was local,” says Perlman, “even high-end applications like professional video editing or computer-aided-design applications typically used on a workstation.”
GameString also relies on compression but takes a slightly different approach. The company’s software runs more parts of a game on the mobile device—mostly the buttons, menus, and other interface components. “The really crunchy stuff is done on the server, and your phone or tablet takes care of the GUI and your interaction with that,” explains Boothroyd. This means that processing on the server can be more specialized, and that existing smart phone games installed on devices as apps can be adapted to use server power.
Perlman says that the approach is interesting, but he has yet to see a powerful demonstration. “It is hard to evaluate,” he says. “World of Warcraft is not a high-action game like a first-person shooter is, and a phone is not large enough for HD graphics.
Boothroyd says he isn’t trying to convert smart phone users into hardcore gamers, but rather to enable mobile games to include powerful 3-D elements. “You could have an episode within a social game like Farmville where you drive the tractor you just bought around an immersive 3-D environment, or add fight scenes to a game like Mafia Wars,” he says. Such features could be lucrative because many users are willing to pay for goods and tools in social games.
However, the limitations of wireless networks pose a challenge to services like those from OnLive and GameString, says Sujit Dey at the University of California, San Diego. Both companies’ demos took place on Wi-Fi connections, not mobile networks, although both claim that a very strong 3G connection would also just about work. “Wireless networks suffer much more fluctuation in bandwidth than wired networks, and also greater variability in latency and jitter,” Dey explains.
To address this problem, Dey and colleagues are working on their own cloud-enabled mobile gaming technology. One feature of the design is that handsets provide constant feedback on the connection so that any changes that might impair the gameplay can be compensated for on the fly. “I have done interviews with gamers and game publishers, and they are very unforgiving,” says Dey, who is in talks with one wireless carrier about deploying the cloud gaming system.
Perlman says that he is also working with mobile operators. “We’re doing experimental stuff with carriers readying 4G services,” he says. “They can do things at their end to ensure enough bandwidth is available.”