[AWS]時代を先取り![クラウドゲーミング]

※追記
今だともっと簡単にゲーミングPC用のインスタンスが立てられます!
詳しくはこちらの記事にまとめましたので、ご確認ください!
[AWS] NVIDIA Gaming PCイメージを使ってEC2でクラウドゲーミング

————
先日セガがクラウドゲーミングサービスとしてPSO2クラウドなんてはじめたみたいですね!
クラウドゲーミングというと、GeForceのマシンを借りられるサービスがあったり、スクエニがずいぶん前から試みたりしていますが、コスト面や通信環境の問題でなかなか浸透していないイメージがあります。

さて、今回の記事ですが、自分でサーバーを借りてクラウドゲーミングみたいなことをやってしまおうという内容です。せっかくPSO2クラウドのサービスが正式に始まったので、私の方もからもPSO2セルフクラウドを目的にやってみたいと思います(笑)

はじめに言っておきますと、ある程度のコストは掛かりますので自宅に高性能なパソコンがあり、通信環境が整っていて、VPNで自宅のパソコンをリモートできるのであればそちらのほうが良いでしょう。

 

クラウドゲーミングは何が便利?

まずはクラウドゲーミングができると何が便利なのか。
一言で言ってしまうと、操作用の端末のスペックをほぼ問わないことが大きな利点です。
どんなに低スペックなPCでも、AndroidでもiOSでも、通信環境さえ揃っていれば常にハイクオリティな画質と滑らかさを実現できます。将来的にクラウドゲーミングが発達していけば、PS4やSwitchなんかのプラットフォームの仮想化なんてものも不可能じゃないかもしれませんね!!(ハード屋さんがそういうサービス用意してくれないと無理ですが・・・)

 

最初に結論

説明が長くなってしまうので先に結論を述べてしまうと、PSO2は自前クラウドゲーミングなんて無理です。理由としては優秀なストリーミングサービスであるSteamホームストリーミングが利用できず、次いで有名なMoonlight Game Streamingでも無視できない遅延が発生してしまいます。nProという不正監視ソフトの存在も大きそうです。

しかしSteamホームストリーミングに対応しているゲームであればストレス無く遊べる感じです。そう・・・それがたとえFF14だろうがDQ10だろうが遊べてしまいます!(ただしギャザやチャットレベルの話でコンテンツ系は無理です!)もはやサーバーの問題じゃなくて、リモートソフトウェアのボトルネックが原因ですね・・・。

まぁ、PSO2で遊ぶことは実用的じゃないにしても他のゲームであれば結構遊べてしまったりします。
ということで早速その手順をごしょうかいしましょう!

 

EC2サービス解除申請

インスタンスタイプで「g2.2xlarge」というGPU搭載のインスタンスを使いたいのですが、デフォルトの設定では利用可能数が0になっています。EC2のコンソールから「制限」の項目を押して、該当のインスタンスの利用上限数が1以上であることを確認してください。

もしも上限数が0になっていた場合には、「緩和のリクエスト」から申請を行う必要があります。

リージョンを東京にしてインスタンス上限を1以上になるように申請します。
ちなみに申請理由を必須項目として書く必要がありますが、「技術勉強のため」であったり「クラウドサービス展開の検証のため」みたいなことを書いて出しました。

私の場合は申請から大体30分くらいで緩和されましたが、1日程度掛かる場合もあるようです。

 

GPU搭載インスタンスを作成する

EC2インスタンスの作成方法は既に慣れている人がここを見に来ていると思うので省略します。
インスタンスタイプですが、GPUインスタンスタイプというものがありますのでこちらを使用します。
AMIはWindows Server 2016 Baseを使用します。

ちなみにg2.2xlargeを借りてます。スペックで言うとPSO2のベンチマークで最高設定のときに15000点。FF14のベンチだと6000点くらいってイメージです。1時間あたりのコストは大体150円くらいです。1ランク上のやつは個人で立ち上げると死にます。桁違いのコストです。

注意点があるとしたら、セキュリティグループの設定には3389番ポートを空けておく必要があるくらいでしょうか。このポートが必要な理由は、WindowsServerインスタンスを実行した際に、リモートデスクトップでアクセスして操作を行うためです。

 

リモートデスクトップでアクセス

インスタンスが立ち上がったら、[接続]を押すとリモートデスクトップの立ち上げに必要な設定ファイルがダウンロードできるようになります。この設定ファイルを実行するとWindowsServer2016にアクセスできます。

 

日本語化方法は割愛します

Windows Server 2016ですが、みなさんが普段使っているWindows10と全く同じようなUIになっています。Windows10のスタートメニューにサーバー管理の設定項目をつけて、セキュリティ面がデフォルトでガチガチになってるイメージです。

最初は英語になっているので日本語化するのですが、Windows10の日本語化手順と全く同じなので割愛します。ざっと言うならばコントロールパネルから言語設定で日本語言語のダウンロードと適用、あとは日時の設定くらいですね。

 

PSO2ベンチマークをダウンロードしてみる

早速スペックを測定したいのでPSO2のベンチマークをダウンロードします。

・・・とこのときは失念してたのですが、DirectXがインストールされてなかったんですよね。
PSO2のベンチマークを導入したら一緒にインストールしてもらえたので由とします。

とベンチマークを開始しようとしたのですが、グラフィックボードが認識されておらずまともに動作しませんでした。確かにデバイスマネージャーでGPUが認識されていなかったのでドライバをインストールしてやる必要があります。

 

GPUドライバとオーディオドライバ

GPUのドライバをインストールするために「GeForceエクスペリエンス」を導入しました。勝手に最新のドライバを持ってきてくれたり便利なやつです。(勝手な更新が原因でダメになるパターンもありますが・・・。)

とインストールを開始したのですが、なんかワイヤレスのサービスがないから導入できないよと怒られてしまいました。
スタートメニューにある「サーバーマネージャー」から「ダッシュボード」を開いてサービスを追加します。

「Wireless LAN Service」をチェックつけてサービスを追加。これで解決。


ということでGeForceエクスペリエンスから最新ドライバをインストールしようとしたのですが、オーディオはドライバが認識するようになったけどGPUは失敗してしまいます。

仕方が無いので直接ドライバを落としてきてインストール。
GRID K520のWindows10版を落としてきます。
デフォルトだとセキュリティ設定強すぎるのと、JavaScript入ってないのでブラウザから検索できません。
なので直接ダウンロードページまで行ってあげる必要があったりします。

 

クラウド上でゲームを動かすことは成功


ということでクラウド上でゲームを動かすことには成功しました。
あとはこいつを遅延の少ないストリーミングソフトウェアで操作してあげればクラウドゲーミング環境の完成です。
どのソフトを使うかはゲームによると思うので割愛しますが、大体はVPN経由のSteamホームストリームで解決すると思います。
VPNサーバーは同じWindowsServer内に設定するのが良いかと思います。
まぁ、ノベルゲームとかRPGならChromeリモートデスクトップでも充分だと思います。

 

終わりに・・・なんかコレジャナイ

ストリーミング部分については実機と同じなので割愛させて頂きますが、思ったより夢があるものじゃなかったです。コストが非常に高く、欠陥だらけですし、これなら自宅のデスクトップPCをVPN経由で操作した方が管理が楽だと思います
Steamホームストリーミング対応のヤツは驚くほどレスポンスが早くて感動しましたが(笑)

スクエニのスマホ、3DSのクラウド版DQ10やスマホ用のFF13、セガのSwitch版PSO2クラウドなど、ゲームごとに最適化されたクラウドサービスを企業側が展開しています。こういったサービスは驚くほど遅延が少なかったりします。
やっぱりそう考えると、企業のレベルってのはすさまじいもんだなと改めて痛感させられますね・・・。

なにより大手ゲーム会社のクラウドゲーミングサービスは1日あたり数百円だったり、完全に無料で提供していたりと不思議なコスト形態です。まだ個人で仮想環境からクラウドゲーミングやろうぜな時代は厳しそうだなと思います。

でも5年後にはそういった時代が来ていてもおかしくはないですよね!

追記:調べてみたらWindowsServer2016ではないバージョンを選んでいればドライバ問題ははじめから解決されてるらしいです()

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)