Skip to content

Instantly share code, notes, and snippets.

@blixt
Last active July 15, 2024 20:57
Show Gist options
  • Save blixt/97009dfa3eb916dbd4624a38191fe10d to your computer and use it in GitHub Desktop.
Save blixt/97009dfa3eb916dbd4624a38191fe10d to your computer and use it in GitHub Desktop.
Playing SteamVR games on the Oculus Quest

Playing SteamVR games on the Oculus Quest, without owning a PC

Setting up your Virtual Machine

We'll be creating a new Virtual Machine on Microsoft's cloud platform, Azure. The VM will have a beefy GPU just like a home computer so it can be used for playing games.

  1. Go to the Azure portal and sign up or log in.

  2. If you are on a Free account, first go to Subscriptions and upgrade it to a Pay-as-you-go plan. Don't worry, you will get to keep any free credits you have. Azure's interface is a bit slow so this will take a minute.

    ⚠️ Make sure to not include any support plan because they will charge you monthly!

  3. Go to Virtual machines and Add a new machine.

    1. Create a Resource group (I named mine "Gaming") if you need to.

    2. Give the machine a name (I named mine "Windows10").

    3. Pick a Region close to you. Make sure the region you pick is close to you by checking where it is on a map.

    4. Pick a Windows 10 Pro Image (I chose the 1809 release).

      ⚠️ This is important for Virtual Desktop to work. I tried Windows Server in multiple different configurations and it just wouldn't work.

    5. Under Size, pick an NV6 image. I was able to use the Standard_NV6_Promo size, which is much cheaper. If an option is grayed out, hover the little i to see why. You may need to increase the size of the VM size column to see it.

    6. Enter the Username and Password that you'll use to log into Windows (and Remote Desktop).

    7. Under Select inbound ports, enable RDP because you'll need it to connect to the machine.

    8. Go to the Next step and add an SSD disk. I added a 128 GB one, which was enough for my needs. Note that over time storage can be the biggest cost of having a VM.

    9. Now you can basically continue Next until you get to Review + create. You may want to enable Auto-shutdown under Management in case you forget to turn it off or fall asleep. You will be charged by the hour for a cloud computer.

    10. Wait for it to be deployed!

  4. Add the graphics card drivers to the Virtual Machine

    1. First select the VM that you created
    2. Under Settings in the VM sidebar, find the Extensions item and click it
    3. Click Add to add an extension
    4. Click NVIDIA GPU Driver Extension
    5. Press Create and then OK
    6. Wait for it to finish
  5. Start up Microsoft Remote Desktop on a computer. If you're on a Mac, download it from the App Store.

    1. Add a new Desktop. Use the Public IP that Azure shows you for your new VM. You can also press the Connect button in Azure which will generate an RDP configuration for you.
    2. Check Connect to an admin session and if you want to, you can also add the User account (username and password from before) here so you don't have to enter them on connect.
    3. You can now connect to your VM and you should see it logging in.
  6. Set up Virtual Desktop

    1. Get the Virtual Desktop Streamer application from the Virtual Desktop website.
    2. Run the downloaded file and follow the instructions (you may have to set up .NET Redistributable).
    3. Once the application is running, enter your Oculus username and hit Save.
  7. Install Steam, SteamVR, and your favorite VR game

    1. Download and install Steam.
    2. Launch Steam and log in.
    3. You will probably need to let it update and restart the first time you launch it.
    4. Search for SteamVR in the Store and Launch it. This will cause it to download. You don't need to launch it yet.
    5. Download and install your favorite VR game on Steam.
  8. You can now continue to the Setting up your Oculus Quest section.

Troubleshooting / extra steps

Making sure the computer is using the graphics card

You may need to go to the Device Manager in Windows and turn off the default display adapter (the non-NVIDIA one).

Additional resources

Setting up your Oculus Quest

For this you will need to purchase and sideload Virtual Desktop on your Oculus Quest. This is a great app that will let you stream any computer desktop into a virtual space, and more importantly for this guide, also let you hook up SteamVR on that computer. The SteamVR integration is very impressive, as the computer will think you have an Oculus Rift S hooked up and will track head and hand controllers perfectly, and map buttons correctly.

  1. Get Virtual Desktop on the Quest store.
  2. (If you don't know what sideloading is, read the section after this one first.)
  3. Sideload the .apk that has SteamVR support over the official version.
  4. Your VM should show up in the Computers list.
  5. Connect to it and use Virtual Desktop's Launch SteamVR action.

About Sideloading

The term "sideloading" means installing something from the side, that is something not from the official store. Developers use this to test their unreleased apps, and it's also a way for more adventurous people out there to install apps that haven't made their way onto the store for various reasons.

For sideloading you will use SideQuest. It's best you follow their guide for setting up your Oculus Quest. Once you've done that you can come back to this guide.

@Bluscream
Copy link

Bluscream commented Jun 28, 2020

I am using a paperspace P4000 Machine and it works just fine!
image

@alexseward
Copy link

I made a fork at https://gist.github.com/alexseward/e4919ab5e23b66e8d4dda6ad44020712 and this works for me on my Quest. I used these steps https://gist.github.com/blixt/97009dfa3eb916dbd4624a38191fe10d to build my VM on Azure and then used this tool https://github.com/steventhegeek/Parsec-Cloud-Preparation-Tool in order to access via Parsec

@judavi
Copy link

judavi commented Oct 20, 2020

Thanks!! The instructions from @alexseward worked for me.

@DanPhonovation
Copy link

This is cool. I'm new to VR though - reading up on steamVr it requires tracking and refers to external sensors. Do quest 2 owners need that to play steamvr? Is there any downside to not having outside-in tracking in steamvr?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment