WVDでフライトシミュレーターをやってみた

[Windows Virtual Desktop (WVD)でGPUの性能計測](https://qiita.com/takeokams/items/e31e48008c28cd6a5e41)を行ったついでに、[Microsoft Flight Simulator](https://www.xbox.com/ja-JP/games/microsoft-flight-simulator) (フライトシミュレーター 2020)をWVDの環境で動かしてみました。

# 環境
- Azure 東日本リージョン
- Standard NV6_Promo (6 vcpu 数、56 GiB メモリ) : NVIDIA Tesla M60
- Windows 10 multi-session Version 2004 : 日本語言語パック適用
- Xbox Game PassでMicrosoft StoreからFlight Simulatorを導入

# 写真集
- フレームレート
![FlightSimulator-WVD-1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/74571131-ddc3-33ad-22f0-560e5cfd35fb.png)
![FlightSimulator-WVD-2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/366fb28b-291b-c918-60c3-25ae6749795a.png)
![FlightSimulator-WVD-3.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/a399525c-1768-a719-94dd-c9a7d2bbc5f7.png)
![FlightSimulator-WVD-4.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/ddc726ab-aca2-e45f-8316-aa7dac4c1a13.png)

- GPU使用率
![FlightSimulator-WVD-5.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/a2727788-dc19-3da9-c837-acf34c628f80.png)
![FlightSimulator-WVD-6.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/eb5f1ab3-aafd-0c3e-65f3-743a4b6f239a.png)
![FlightSimulator-WVD-7.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/49238339-d975-515a-1cc6-d13c8a48d63e.png)

- 利用ネットワーク帯域
![FlightSimulator-WVD-11.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/d8c682e7-5c46-28fa-e6ad-de7f470b7478.png)
![FlightSimulator-WVD-12.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/c46b4fdf-1bac-930b-ba3a-2b4167761c9b.png)

# 今回の学び
## Flight Simulator関連
- WINDOWEDしかできません。インストール時はフルスクリーンになりましたが、インストール後は設定変更ができません。FFではボーダーレス(仮想フルスクリーン)を設定できるのですが、現在のFlight Simulatorにはそれがありません。また、解像度がクライアントデバイスのもので固定されてしまい、ここでは私が利用しているSurface Pro 6の解像度が出てきて、Full HD画質(1920×1080)を超えているのがfpsに影響しているものと思われます。GLOBAL RENDERING QUALITYの設定は、ほとんどfpsに影響しませんでした。
![FlightSimulator-WVD-9.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/7c552430-dda7-f132-c9f1-a7d142cb2d18.png)
- fpsはDevelopers Modeで表示することが可能です。([設定動画](https://www.youtube.com/watch?v=rcFzazDeEbA))
![FlightSimulator-WVD-10.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/60ead1b4-f462-967c-5669-24d0111c4e4b.png)
- 初期化時にセッションが切れます。おそらくFlight SimulatorがGPUの設定をする際、RDP側に干渉しているのでは? と想像していますが、原因はわかっていません。このグループポリシーを有効にしています: `[Use hardware graphics adapters for all Remote Desktop Services sessions] (すべてのリモート デスクトップ サービス セッションにハードウェアのグラフィックス アダプターを使用する)` なお、セッションが切れるだけで、再接続するとアプリケーションは不正終了することなく動作しています。また、セッションが切れるのは当該のものだけで、マルチセッションで入っているほかのユーザーには影響ありません。
![FlightSimulator-WVD-8.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/684720/5c2d9e48-1fcf-7e0d-81b4-316661ec3614.png)

## WVD周りの注意点
- Flight Simulatorの必要ストレージ容量が大きいため、起動ディスク(C:)が128 GiBだと入りません。簡単に対処するなら、あらかじめ512 GiBに増やして、Windows内でもボリューム拡張しておくなど、アプリの要件にあった容量を用意する必要があります。WVD環境でのアプリの利用には、いくつかパターンがありますので要件に合わせて。
- ストアアプリのFlight Simulatorを、WVDのマスターイメージの中に入れることはできません。入れてからSysprepするとエラーになります。もし入れてしまったら、「sysprep ストアアプリ」などとキーワードを入れて検索すると対処方法が出てきます。
- ストアアプリのFlight SimulatorをWVDのセッションホストにインストールする場合は、セッションホスト上のWindowsに管理者権限が必要になります。WVDの通常の設定だけでは足りないので、ローカルの`Administrators`グループに`<ドメイン>\Domain Users`を加える、グループポリシーで設定を行います。「Active Directory ドメイン参加ユーザ ローカルPC管理権限」というようなキーワードで検索すると参考になるページが出てきます。Azure AD Domain Servicesの場合は、`AADDC Computers GPO`に設定することでもよいでしょう。