Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Cloudy With a Chance of Gaming

DZone's Guide to

Cloudy With a Chance of Gaming

Gaming as a service has risen in popularity and feasibility. Blogger Dominic Szablewski has even created a way to play Grand Theft Auto V in a web browser.

· Performance Zone
Free Resource

Evolve your approach to Application Performance Monitoring by adopting five best practices that are outlined and explored in this e-book, brought to you in partnership with BMC.

Blogger Dominic Szablewski posted an amazing tutorial on his cleverly named blog, PhobosLab. Szablewski figured out a method for playing Rockstar Games' Grand Theft Auto V in a web browser. GTA V is notorious for high system requirements, as many recent PC releases are (I'm looking at you The Witcher 3), but according to Dominic, his method for running GTA V in-browser can handle 60 frames per second (FPS) and maintain low latency. However, since it's streamed, performance is contingent on network speed and reliability.


According to the PhobosLab blog post, Szablewski's inspiration derived from an article about gaming with a personal cloud. While physical games aren't extinct, digital delivery services like Steam and GOG rose to prominence, so it was no shock when game streaming services began popping up. The now defunct OnLive debuted in 2003, lasting 12 years before acquisition by Sony. Currently, gaming as a service (GaaS) platforms are as abundant as ever with offerings from major tech players. There's NVIDIA Grid, Sony's PlayStation Now, and even a streaming service from GameFly which launched recently. The ability to download your games on any computer is great, but being able to play anywhere through cloud gaming is even better.

Game streaming, whether cloud-based or locally, is evolving with the help of pioneers such as Valve and open source communities. Valve's SteamOS features an in-home streaming feature, and there's also Moonlight (the open source game-streaming client formerly known as Limelight). Razer's Forge TV also seeks to bridge PC gaming with the living room with game streaming features, but with Dominic's tutorial, any developer can make their own game streaming DIY solution with JavaScript. PC Gamer's Dave James also wrote an awesome post on how to use a Raspberry Pi 2 for game-streaming. While James' setup might not win any benchmarking tests or handle 4k, much less 1080p video, it's an inexpensive solution, proving that streaming games is becoming much simplier and accomodating to a variety of hardware. 

As games transitioned off the disc and onto digital delivery, it was only a matter of time until game-streaming became popular. The next logical move is broswer-based play for graphic-intensive games, divorcing players from client downloads. Many older titles like Doom and Quake already have browser versions (warning: don't forget to use Incognito mode if playing at work). In-browser play isn't new, but it's usually relegated to casual games like Runescape, or retro games with low system requirements. However, with creative geniuses providing methods for playing The Witcher 3 via cloud on an underpowered Mac laptop and GTA V in a web browser, it's becoming increasingly feasible to take your games on the go. As DIYers begin adopting methods like Szablewski's, it's possible we'll see vendors like GameFly debuting similar services for browser-based play, completely revolutionizing how, and where, we game. 

Learn tips and best practices for optimizing your capacity management strategy with the Market Guide for Capacity Management, brought to you in partnership with BMC.

Topics:
performance ,game dev

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}