VPSでゲームはプレイできる?できない理由と用途
VPSで自分がゲームをプレイできない理由を、GPUやOpenGLの制約から解説します。一方で、ゲームサーバーのホスティングにはVPSが適しています。
VPS でゲームをプレイできますか? 簡潔な回答
VPS でゲームをプレイできるかという質問には、目的によって正反対の回答が必要です。レンタルしたサーバー上で自分がゲームをプレイし、その映像を手元の画面で見る場合、標準的な VPS(virtual private server)では実現できません。設定を変更しても解決しません。一方、他のプレイヤーが接続するゲームサーバーをホストしたい場合、VPS は費用対効果の高い選択肢の 1 つです。小規模なプランで十分なことも多くあります。
ゲームサーバーのホスティングが目的なら、ゲームサーバー用 VPS の選び方 または VPS 上で Minecraft サーバーを運用する方法 に進んでください。以下のセクションでは、ゲームをプレイする用途がなぜ機能しないのかを説明します。この点を明確に説明した回答は、あまり見つからないためです。
標準的な VPS に GPU がない理由
標準的な VPS は、共有ホストを分割したものです。仮想 CPU コア、RAM、ディスク、ネットワークポートが割り当てられます。ホストはラックサーバーです。ラックサーバーには通常、一般向けのグラフィックカードが搭載されていません。ゲーミング GPU(graphics processing unit)は、専用ファンと大きな電力容量を備えたデスクトップケース向けに設計されているためです。仮想マシンには仮想ディスプレイアダプターが割り当てられます。これは、ブートコンソールの描画先を確保するためです。グラフィックスに関する説明はこれで終わりです。
lspci | grep -i -E 'vga|3d|display'
ls -l /dev/dri最初のコマンドは 1 行を表示します。通常は Cirrus Logic GD 5446 や Red Hat, Inc. Virtio 1.0 GPU のような内容です。これらのデバイスには 3D エンジンがありません。2 番目のコマンドは通常、ls: cannot access '/dev/dri': No such file or directory を返します。プログラムが開ける直接レンダリングデバイスが存在しないためです。実 GPU インスタンスでは、同じコマンドで card0 と renderD128 が表示されます。
Mesa を使えば、ソフトウェアレンダラーである llvmpipe を通じて OpenGL を利用できます。これはすべての三角形を CPU 上で描画します。デスクトップ環境や古い 2D ゲームには十分です。最新の 3D タイトルでは数 FPS しか出ません。その場合、CPU は最も不得意な処理に占有されるため、ゲームロジックも遅くなります。
リモートプレイを破綻させるのは入力遅延です
リモートプレイはループ処理です。キー入力がサーバーに届き、サーバーがフレームをレンダリングし、そのフレームを動画としてエンコードして送り返します。次に、クライアントが動画をデコードして画面に表示します。各段階で数ミリ秒かかり、それらが積み重なります。
The data behind this chart
[
{
"label": "Input capture and send",
"typical_ms": 5
},
{
"label": "Network round trip",
"typical_ms": 15
},
{
"label": "Frame render on the server",
"typical_ms": 12
},
{
"label": "Hardware video encode",
"typical_ms": 8
},
{
"label": "Decode and display on the client",
"typical_ms": 15
},
{
"label": "Sum of the stages above",
"typical_ms": 55
}
]このうちネットワークの往復にかかる時間は 15 ms だけです。サーバーを近くに配置することで短縮できるのは、この部分です。それ以外は処理パイプライン自体にかかる時間であり、サーバーの場所には左右されません。ゲームが独自の処理を始める前に、各段階によって 55 ms の遅延が発生します。これらは、同じ地域にあるクライアントへハードウェアエンコーダーでストリーミングした場合に公表されている一般的な値です。1 台のマシンで測定した値ではないため、問題の構造を示す目安として見てください。
この遅延はフィードバックループの中で発生します。マウスを動かし、結果を見て、修正します。遅延が増えると、すべての修正が遅れて届くため、ターゲットを通り過ぎてから再び修正することになります。ターン制ゲーム、ストラテジーゲーム、経営シミュレーション、カードゲームでは大きな問題になりません。一方、シューティングゲーム、格闘ゲーム、リズムゲーム、レースゲームでは問題になります。
ジッターとパケット損失は、別の形で影響します。動画ストリームは再送を待てません。そのパケットが属するフレームは、再送される時点ですでに遅れているためです。そのため、パケット損失は一時停止ではなく、ブロック状の乱れや映像の停止として現れます。これが、リモートデスクトップが適切な手段ではない理由でもあります。VNC (virtual network computing) と通常の RDP (remote desktop protocol) は、変更された矩形領域を TCP 経由で送信します。1 秒間に 60 回、画面全体が変化する状況では、再送のストリームになってしまいます。
実際のクラウドゲーミング環境に必要なもの
これを適切に構築することは可能です。ただし、4つの条件を同時に満たす必要があります。
- データセンター向けカードを搭載した GPU インスタンス。プロバイダーがレンタル提供するためにライセンスを取得しているのは、この種の GPU だけだからです。
- NVENC などのハードウェアビデオエンコーダー。NVENC は NVIDIA の内蔵エンコーダーです。ソフトウェアエンコードでは CPU 時間を消費し、遅延も増加します。
- デスクトップではなくゲーム向けに構成されたストリーミング環境。サーバー側の Sunshine とクライアント側の Moonlight の組み合わせが、一般的なオープンソースの選択肢です。
- 自分がいる都市圏のサーバー。往復遅延は距離に左右され、距離は光ファイバー内の光速で決まるからです。
次に料金を計算します。GPU インスタンスは時間単位で課金されるため、1時間あたりの料金に 730 を掛けると、1か月間稼働させた場合の費用を求められます。2026年8月時点では、米ドルで3桁台の月額料金になります。この金額なら1年以内にゲーム機を買い切れますが、ゲームのライセンス料は別途必要です。GPU VPS で実際に利用できるものとGPU 時間をレンタルする場合の損益分岐点の計算で、具体的な数字を確認できます。
ゲームをプレイすることだけが目的なら、商用クラウドゲーミングサービスが、必要なライセンスを処理したうえで、この構成を利用者の近くのデータセンターからすでに提供しています。1都市に配置した1台の VPS では、ゲーム向けに構築されたネットワークには対抗できません。
アンチチートとライセンスの残る制約
高性能な GPU サーバーでも、規則の制約を受けます。Riot の Vanguard は Windows 11 で TPM 2.0(trusted platform module)と Secure Boot を必要とし、仮想マシン内では動作しません。そのため、レンタルしたクラウドのハードウェアでは Valorant が起動しません。Easy Anti-Cheat と BattlEye もハイパーバイザーを検出することがあります。これらを使用する複数のタイトルでは、仮想マシンをブロックしたり、仮想マシンの使用を理由にアカウントを禁止したりします。これは意図的な仕様です。不正行為の開発者は仮想マシンを使ってツールを隠すため、仮想マシン内での動作を拒否することは、ゲームにとって低コストな対策になります。
さらに、ライセンスの制約があります。NVIDIA の GeForce ドライバーのライセンスはデータセンターでの使用を制限しています。そのため、プロバイダーはデスクトップ向けカードではなく、データセンター向けカードを貸し出します。Windows には、自分が所有していないハードウェア上で実行できるライセンスが必要です。販売プラットフォームの利用規約では、購入したコピーを実行できる場所も定められています。これらの制約は、1 つだけなら対処できます。しかし、すべてが重なると、手作業で構築したクラウドゲーミング用の環境では、利用者が実際に求める競技性の高いゲームの大半を実行できません。
CPU のみの VPS で非常に快適に動作するもの
次に、もう一方の読者について説明します。専用ゲームサーバーは画面を描画しません。ワールドをシミュレーションし、各プレイヤーの入力を適用して、状態更新をネットワーク経由で返します。描画はプレイヤー側のマシンが行います。レンダリングを行わないため GPU は不要です。そのため、ゲームをプレイする用途には不向きなマシンが、ホスティングには適しています。
- Minecraft、Valheim、Terraria、Factorio、Rust、Project Zomboid、およびヘッドレスサーバービルドを提供するその他の多くのタイトルの専用サーバーです。
- ボイスチャットです。Mumble サーバーは軽量なため、同じ小規模プラン上でゲームサーバーと併設できます。
- プレイヤーがオンライン状況を確認する Web パネルに加え、通常の HTTP による Mod とマップのダウンロードです。
- マッチメイキング、統計、リーダーボード、Discord ボット、およびそれらの背後で動作するデータベースです。
- 破損したセーブデータによる損失をマップ全体ではなく 1 時間分に抑える、外部へ退避する定期的なワールドバックアップです。
通常、制約になるのは RAM です。また、これらのゲームの多くでは、コア数よりも単一コアの速度が重要です。Minecraft や Factorio のサーバーの主要なシミュレーション処理は、1 つのスレッドで実行されるためです。低速な 8 コアのプランは、高速な 4 コアのプランに劣ります。帯域幅の使用量は CPU 使用量よりもプレイヤー数に応じて増加します。プロバイダーは転送量を計測するため、プランを選ぶ前に許容量を確認してください。
適切なポートを開放してください。また、ゲーム内トラフィックの多くは TCP ではなく UDP(user datagram protocol)であることに注意してください。
sudo ufw allow 25565/tcp
sudo ufw allow 27015/udp
sudo ufw statusufw status には各ルールを ALLOW とともに一覧表示する必要があります。ここでポートが開放されていてもサーバーに接続できない場合は、プロバイダーのコントロールパネルに別のネットワークファイアウォールがないか確認してください。マシン内部のルールは、その前段にあるフィルターには影響しないためです。
手動操作なしで実行し続けられるようにします。systemd unit または Docker の restart policy を使用すると、再起動後にサーバーを復旧できます。ブート時に自動起動する compose stack と組み合わせるのが一般的な構成です。さらに 外部へ退避する定期バックアップ を組み合わせると、ディスクが故障してもワールドファイルを保持できます。
VPS をホスティングに使う前の確認方法
プレイヤーまでのレイテンシによって、サーバーの操作感が決まります。これは測定できます。利用したいリージョンにあるテスト用アドレスをプロバイダーに確認し、サーバーではなくプレイヤーのネットワークから次のコマンドを実行します。
ping -c 20 203.0.113.10
mtr -r -c 100 203.0.113.10ping は、rtt min/avg/max/mdev = 18.4/19.1/24.6/1.2 ms のようなサマリー行で終了します。最後の数値はジッターです。平均値が安定してジッターが小さいほうが、平均値が低くても変動する場合より、ゲーム内の操作感はよくなります。mtr はホップごとのパケットロスを表示します。確認するのは最後の行のロスだけにしてください。途中のルーターは、自身が返す ICMP(Internet Control Message Protocol)応答の優先度を最低にするため、実際のネットワークトラフィックでは発生していないロスを報告することが多いためです。
次に、ホストが過剰収容されていないか確認します。
vmstat 1 5st 列は steal time です。仮想 CPU が実行可能な状態だった時間のうち、物理ホストがその CPU サイクルを別のゲストに割り当てた割合を示します。この値が継続的に 0 ではない場合、プランの説明にかかわらず、負荷時に tick rate が変動します。Steal time と noisy neighbours では、この値の読み方を説明しています。VPS を自分でベンチマークする では、1 年契約を結ぶ前に収集すべきその他の数値を説明しています。
両方の質問への簡潔な回答
ゲームをプレイしたい場合は、手元で操作できるハードウェア上でゲームを実行するか、ゲーム配信向けのサービスを利用してください。汎用 VPS ではレンダリングできません。GPU インスタンスはハードウェアを購入するより高価であり、それでもアンチチートの制約を受けます。ゲームをホストしたい場合は、VPS を借りてください。VPS は低コストで適しており、ゲームをしない時間帯には同じサーバーで他のサービスも実行できます。
FAQ
Steam を VPS にインストールしてゲームをプレイできますか?
Linux VPS に Steam クライアントをインストールして、ゲームをダウンロードすることはできます。問題はプレイする部分です。標準プランには GPU がないため、3D タイトルは CPU レンダリングにフォールバックし、数 FPS しか出ません。また、対応するレンダラーがないと起動しない最新ゲームも多くあります。レンダリングできた映像を画面へストリーミングすると、さらにエンコード遅延とネットワーク遅延が加わります。Steam Remote Play は、所有している実機のゲーミングマシンからストリーミングするように設計されており、そのマシンにグラフィックカードがあることを前提としています。
GPU VPS なら所有しているゲームをすべてプレイできますか?
レンダリングの問題は解消できますが、それ以外の問題は残ります。ハードウェアエンコーダー、Moonlight のような低遅延クライアント、そして往復遅延を小さく保てる距離にあるサーバーが必要です。障害になるのはアンチチートです。Riot の Vanguard は仮想マシン上での実行を拒否します。また、Easy Anti-Cheat と BattlEye はハイパーバイザーを検出する可能性があるため、対戦型シューティングゲームには適しません。現実的な用途はシングルプレイヤーゲームやテンポの遅いゲームですが、月額費用はローカルのハードウェア価格を上回ります。
10 人の友人向け Minecraft サーバーには、どのサイズの VPS が必要ですか?
バニラの Java サーバーであれば、10 人のプレイヤーには 2 vCPU と 4 GB の RAM があれば余裕があります。-Xmx3G を使用して JVM(Java 仮想マシン)に約 3 GB を割り当て、残りをオペレーティングシステム用に確保してください。JVM は許可されたメモリをすべて使用する一方で、カーネルにもページキャッシュ用のメモリが必要だからです。大規模な Modpack では条件が変わります。ヒープだけで 6 GB から 8 GB を見込み、より高速なシングルコアを備えたプランを選んでください。ワールドのメインティックは 1 スレッドで実行されるためです。
リモートデスクトップは快適なのに、ゲームは快適でないのはなぜですか?
デスクトップでは画面の一部だけが一度に変化するため、ウィンドウの再描画が 100 ms 遅れても通常は気になりません。ゲームでは 1 秒に数十回、すべてのピクセルが変化し、手の操作を通じたフィードバックループが成立します。VNC と通常の RDP は変化した矩形領域を TCP 経由で送信するため、画面が常に動くと再送と停止が発生します。適切な動画ストリームを使用しても入力遅延は残り、それが照準操作時に感じる遅延になります。