AzureにGamingPCを生やす

# はじめに

個人用メモ。ゴールデンウィークどこにも行けなくてPCゲームで遊びたいけど、ゲーム用PCを買うほどの気力は無い人向け。AzureでGaming PCを生やす。

追記:  2020年6月からGeForce Now !のクラウドゲーミングサービスが始まるみたいだから、そっちに加入したほうが安いし楽。

# 注意

立てたVMは遊び終わったら停止すること。課金される。

すべてのリソース ＞ 自分の立てたVM ＞　概要 ＞　停止　ボタンを押す。

# 参考

https://lg.io/2016/10/12/cloudy-gamer-playing-overwatch-on-azures-new-monster-gpu-instances.html

# 手順

すでにAzureアカウントは用意してあるものとする。

# VMを生やす

言われるがままピコピコWeb画面に入力するだけ。

- OSはWindows10
- VMサイズは NV6_promo (promoがついてると少し安い）
- リージョンは自分の家から一番近いやつ（東日本OR西日本）


![スクリーンショット 2020-04-30 12.03.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233578/c9736b0d-1ca1-08c3-4610-c3f40b27ece6.png)
![スクリーンショット 2020-04-30 12.07.42.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233578/f06f19c4-f7c4-34ec-39e3-d29a33be49d1.png)
![スクリーンショット 2020-04-30 12.04.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233578/fb2244a6-6238-c799-2454-6e549cbd1312.png)

# NvidiaのGPUドライバの導入

参考:  https://docs.microsoft.com/ja-jp/azure/virtual-machines/extensions/hpccompute-gpu-windows
vmに直接リモートログインしてnvidiaのドライバを導入してもうまくいかなかった。Azureが用意してくれているextensionを使用。（ここでかなり躓いた）

```shell

az login

az vm extension set \
  --resource-group YOUR_RESOURCE_GROUP \
  --vm-name YOUR_VM_NAME \
  --name NvidiaGpuDriverWindows \
  --publisher Microsoft.HpcCompute \
  --version 1.2 \
  --settings '{}' \
  --subscription YOUR_SUBSCRIPTION

```

# リモートデスクトップ接続設定

- ローカルPCに Microsoft Remote Desktop をインストール。MAC版: https://apps.apple.com/jp/app/microsoft-remote-desktop-10/id1295203466?mt=12  
- Azure画面から すべてのリソース ＞ 自分の立てたVM ＞ 接続 を選択してRDPファイルをダウンロード。
- Microsoft Remote Desktop からRDPファイルを読み込む。
- Microsoft Remote Desktop から自分のたてたVMを右クリックし、Edit > Device & Audio > Microphoneにチェックを入れる。（これをしないと自分のマイク音声がリモート先に転送されない）

![スクリーンショット 2020-04-30 12.29.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233578/5024bec6-cc5f-dffc-9687-3119bf57d20a.png)

# steamのインストール

自分のIDとパスワードでログインして、自分のゲームを入れる。おわり。

# より高みを目指して

さて、ここまででもwindows remote desktopを使って楽しくゲームをすることはできる。しかし、リモートデスクトップはゲーム用にできてないので、すこしラグがある。steam付属のsteam remote desktopを利用することでより遅延の少ないリモートデスクトップ環境を実現できる。（やや茨の道だった）

# 自動ログインの有効化

これにより再起動したとき、リモートで勝手にSteamが立ち上がってくれる。

- windows remote desktopでリモートにログイン。
- スタートボタンを押した後、‘netplwiz’と入力
- 自分のユーザー名を選択
- ‘Users must enter a user name and password to use this computer’ のチェックを外す。
-  OK ボタンをクリックし、自分のパスワードを入れる。
- 再起動。

<img width="465" alt="netplwiz.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233578/f0ffb641-58cc-ecbe-3fa4-bcac33df70ee.png">

これでローカルのPCでリモートのPCと同じIDとパスワードでsteamを立ち上げると、こんな感じでリモートにダウンロードしたPCをストリーミングできるようなボタンが表示されているはずだ。

![スクリーンショット 2020-05-01 1.36.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233578/e7e0f922-ffbe-cbbd-076d-c7a9397ec6d5.png)

# windows remote desktopを廃止してteamviewerを導入する。

ここで問題なのが、なぜかwindows remote desktopでログイン、ログアウトをしたあとだと、steam remote play ができない原因不明な不具合がある。リモートの設定を変更するときに使うリモートデスクトップアプリをwindows remote desktopからteamviewerに変更しよう。やり方のスクショは取り忘れたが簡単だ。

# ローカルのマイク音声をリモートに通す

steam remote playはローカルのマイクで拾った音声をリモートに転送してくれる機能が無い。（要検証）このためこのサイトを参考にマイクをリモートでも使えるようにした。

https://support.parsecgaming.com/hc/en-us/articles/360000961232

おわり。