Updated: April 8, 2019 — Updated driver link with link direct from Google Cloud.

One of the common complaints I’ve heard on Chrome OS is that while it’s a great OS, it’s lacking for games. Windows has a HUGE gaming library, but that hasn’t been easy to bring to other platforms. At work, I’m often working with customers to solve for “app gap” using virtualization solutions for streaming apps to Chrome OS. After some research (shout out to /r/CloudyGamer), I decided it was time to try building a cloud-based gaming rig in Google Cloud Platform for streaming to my Pixelbook. I tried two of the most popular game streaming options, Parsec and Rainway.

The Rig

We start with a Window 2016 VM. I opted to chose a region & zone close to me in NYC, so I opted for us-east4 in N. Virginia. Use this site for referencing which GPUs are in which region. This will show you which regions support virtual workstation GPUs, which already have GRID activated. You’ll need GRID for gaming. I’d recommend choosing SSD for the disk. This will give you the best performance for gaming. After booting your VM, you’re going to want to install the drivers for the GPU. These can be a huge pain to find, so here’s a direct link to ones that have worked well for me. You will have no sound card, so we’ll need to create a virtual one. I have found VB-Audio Cable to work really well. Make sure to reboot after to have the new sound card picked up. Make sure to open your VPC firewall to allow Rainway and Parsec. Here’s the rules that worked for me:

VPC Firewall Rules

Tips for Operating

You’ll use RDP for installing and interacting with the server administratively. By default, GCP VMs will have ephemeral IP addresses. I installed this Windows service to dynamically update my Google Domains DNS with the ephemeral IP. I highly recommend the Google Cloud Console app for iOS & Android, making it easy to power your VM off and on from mobile. Make sure to power off the VM when you’re not using it. I have calculated approximately $1.60/hr for the cost of my configuration (8 core, 30 GB RAM, P4 GPU, 20 Mbps for the full hour).

Parsec

Parsec has client applications for Windows, Mac, Android, Web, and soon iOS. Being on Chrome OS, I have the option to run the Android or Web clients, with both working quite well.

The Good

Parsec offers apps for desktop & mobile, with the Android app working well on Chrome devices that support Play Store. Their Android app also supports Android TV!

Parsec now offers a beta web client, which works well on Chrome OS.

I tended to have the best performance using Parsec. In times when Rainway would be laggy, I could fire Parsec right up and the performance was great.

The Bad

As of writing, the Android app (which I primarily use for Chrome OS) does not support mouse capture. This is a known issue and means any game that has FPS elements do not work well. Both Portal 2 and Star Citizen were unplayable. The recommended workaround today is to use a controller instead. According to a recent release of Parsec, this has been fixed, but is awaiting Android P to land on Chrome OS. For now, the web client supports mouse capture.

There is a slight blurring of content. While not an issue often, when interacting with elements with small text, it can be almost unreadable.

The Universim on Pixelbook using Parsec

Lord of the Rings Online on Pixelbook using Parsec

Rainway

Rainway has focused on creating an excellent web client, which really centers on delivering Steam games.

The Good

Rainway is completely browser-based, meaning no client software to install. This is great for Chrome OS, but also means there’s not mobile clients beyond using a browser.

Mouse capture is supported, meaning playing FPS games works well.

The Bad

Rainway really focuses on delivering Steam games. If you have games installed outside of Steam (like Star Citizen), you’ll need to workaround. For me, installing Lord of the Rings Online in Steam will fire up a desktop session, then I can launch any app I want.