Ubuntu日和
【第3回】Ubuntuでもエルデンリングを動かせる! SteamでWindows用のゲームをプレイしよう
2022年5月21日 06:25
第2回では、Windowsに対するUbuntuの利点を紹介した。Ubuntuの特徴を知ることで、自分なりの「Ubuntuを使う理由」が見つかったのであれば幸いだ。さて、そもそもの話になるが、OSとはアプリケーションを動かす土台でしかない。ほとんどの場合、OSの選定理由において支配的なのは「自分が使いたいアプリが動くかどうか」ではないだろうか。
2022年現在、人気のあるアプリはマルチプラットフォームに対応するのが当たり前になってきている。具体的な例を挙げれば、WebブラウザのFirefoxやGoogle Chrome、オフィススイートのLibreOffice、メディアプレイヤーのVLC、3DCG制作環境のBlender、テキストエディタのEmacsなどは、WindowsでもMacでもLinuxでも動作する。こうしたアプリのみを利用しているのであれば、土台となるOSそのものの違いはさほど気にならない。そういう意味では、WindowsでもUbuntuでも、趣味で好きなものを選んで構わないと言える。もちろん「俺はLinux、それもUbuntuじゃないとPCを使う気になれないんだ」という強いこだわりを持っている人もいるかもしれないが、世間的にはレアなケースと言っていいだろう。いつもご愛顧ありがとうございます。
しかしWindowsやMacでしか動かないアプリを使いたいのであれば、Ubuntuだけで生活するというのは少々厳しい。筆者も普段使いのPCこそUbuntuなものの、写真の現像にAdobeの製品を使いたいため、現像専用のWindows PCを別途用意しているのが現実だ。
そして「Windowsがないと困る」系のアプリの筆頭といえば、商用のゲームではないだろうか?
Steamとは
Steamとは、米Valve社が運営するPC向けゲーム配信プラットフォームだ。PCゲームに馴染みがない人向けに簡単に説明すると、PlayStationにおけるPlayStaion Storeや、Nintendo SwitchにおけるニンテンドーeショップのPC版だと思ってもらえればいいだろう。Steamでは大手パブリッシャーからインディーズまで幅広いタイトルが配信されており、月間アクティブユーザー数は1億人を越えるなど、非常に大きな規模を誇っている。
Valve社は「SteamOS」というPC用のOSを開発している。これはPCをゲーム専用機のように仕立てることを目的として作られた、LinuxをベースとしたOSだ。一般的なPCにSteamOSをインストールしてテレビにつなげば、家庭用ゲーム機と同じ感覚で、Steamのゲームタイトルを楽しめるというわけだ。こうした背景もあり、SteamクライアントにはLinux向けのバージョンが用意されている。これは当然Ubuntuにも対応しており、Ubuntu上でもWindowsやMacと同様に、ゲームを購入したり、プレイすることができる。
ただしSteamクライアント自体がLinuxに対応しているとはいえ、遊びたいタイトルもLinuxに対応しているとは限らない。具体的な例を挙げると、工場建設シミュレーションの「Factorio」、Paradoxの4Xストラテジーである「Stellaris」、超有名インディーズタイトルである「UNDERTALE」などはLinuxにネイティブ対応しているものの、ファイナルファンタジーシリーズやモンスターハンターシリーズなど、メジャータイトルの多くはWindows専用となっている。
こうしたゲームをPCで遊びたいから、Windowsが手放せないという人も多いと思う。だが、もしもこれらのゲームがUbuntu上でも、Windowsと同様に動くとしたら……どうだろうか?
Windows用ゲームをLinux上で動かせる仕組み
PC Watchの読者であれば、Linuxのインストールに挑戦したことがある人も多いだろう。そしてその過程で「Wine」というソフトウェアの存在を知った人もいるかもしれない。Wineとは、Windowsアプリが動作に必要とするWindows APIを、オープンソースで実装した互換レイヤーだ。エミュレーターや仮想マシンでWindowsそのものを動作させるのではなく、APIを変換するレイヤーを設けることで、WindowsアプリをLinux(をはじめとしたUnixライクなOS)上で直接実行させることができる。
このWineをベースとして、Valve社によってSteam上でのゲームプレイを目的とした機能を追加された改良版が「Proton」だ。Protonの特徴は、Windowsの3DグラフィックAPIであるDirect3Dを、クロスプラットフォームの3DグラフィックAPIであるVulkanへ変換するレイヤーが含まれている点にある。この機能によってSteamは、Linux上でも、Windowsと遜色ないパフォーマンスでのゲーム実行を可能としている。
Steamには「Steam Play」という、「一度購入したタイトルは、異なるマシンやOS上でもプレイできる」仕組みがある。そしてProtonは、このSteam Playと統合されて、現在のSteamクライアントに組み込まれている。そのためOSの違いを意識せず、Windows専用のタイトルであってもLinux上にインストールしてプレイできるのだ。
それではUbuntu 22.04 LTSにSteamクライアントをインストールして、実際にゲームを動かしてみようと思う。今回動作テストに用いたのは、セールスは世界累計1,340万本を突破(2022年5月現在)、現在最もゲーマーの睡眠時間を奪っている(個人の感想です)人気タイトル「エルデンリング」だ。
なおエルデンリングの動作には、それなりに高いスペックのPCが要求される。最低必要スペックと、筆者がテストに利用したスペックは共に以下の通りだ。なお筆者のスペックではビデオカードが足を引っぱっており、快適に遊ぶには解像度を1,920ドット×1,080ドット、テクスチャ品質を中にまで落とす必要があった。4K解像度でプレイするには、よりパワフルなビデオカードが必要になるだろう。これからプレイする人は参考にして欲しい。
最低必要スペック | 筆者の用意したスペック | |
---|---|---|
プロセッサ | Intel Core i5-8400 or AMD Ryzen 3 3300X | AMD Ryzen 9 5900X |
メモリー | 12GB | 64GB |
ビデオカード | NVIDIA GeForce GTX 1060 3GB or AMD RADEON RX 580 4GB | NVIDIA GeForce GTX 1080 8GB |
ストレージ | 60GB | 1TB |
プロプライエタリなデバイスドライバのインストール
早速Steamクライアントをインストール……といきたい所だが、その前にグラフィックドライバについてチェックしておこう。
最近のCPUはそれなりに性能のよいグラフィック機能を内蔵しているため、グビデオカードを搭載していないPCも多く存在する。実際に一般的なデスクトップ用途であれば、CPU内蔵グラフィックで困るケースというのはほとんどないと言っていい。しかしゲームとなれば話は別だ。リアルな3Dグラフィックで描画された、最近の派手なゲームをヌルヌル動かしたいなら、高度な3Dグラフィック性能は必要不可欠となる。そのためゲームを動かす想定のPCであれば、NVIDIAのGeForceやAMDのRADEONといったビデオカードを別途搭載するのが一般的だろう。
当然だが、こうしたビデオカードを動かすにはデバイスドライバが必要だ。前述の通り、今回テスト用に用意した筆者のPCは、NVIDIAのGeForce GTX 1080を搭載している。NVIDIA製のビデオカードを搭載しているPCの場合、Ubuntuはデフォルトで、オープンソースの「nouveau」と呼ばれるデバイスドライバをロードする。しかしオープンソースのnouveauドライバと、NVIDIAが提供しているプロプライエタリ(独占的という意味。権利者が仕様やコードを公開しておらず、自由な改変や再配布ができないなど、さまざまな制限が課されたソフトウェア全般を指す言葉)なドライバでは、パフォーマンスに無視できないほど大きな違いがある。
参考までに、nouveauドライバとNVIDIA製のドライバでUnigine ValleyとUnigine Heavenベンチマークを行なった結果が以下のグラフだ。
そのためゲームをプレイするのであれば、あらかじめプロプライエタリなドライバをインストールしておくことを勧める。まずSuperキー(一般的なキーボードではWindowsキー)を押して「アクティビティ」画面を呼び出そう。そこから「追加のドライバー」を起動する。「ソフトウェアとアップデート」ウィンドウの「追加のドライバー」タブが開くと、現在のデバイスに適したドライバーが自動的に検索される。沢山の候補が表示されるため面食らうかもしれないが、基本的には「検証済み」と表示されているバージョンを選択しておけばよいだろう。今回は「nvidia-driver-510」を選択した。なおドライバのインストール完了後には、一度Ubuntuを再起動する必要がある。
なお、あまりにも新しすぎるビデオカードを使っていると、Ubuntuが用意しているデバイスドライバでは対応していない場合がある。そのような場合は、NVIDIAのWebページから最新のドライバを入手してインストールしよう。ただし本記事では、手動インストールの手順は割愛させてもらう。
Steamのインストール
それではSteamクライアントをインストールしよう。今度はアクティビティ画面から「Ubuntu Software」を起動する。そしてウィンドウの左上にある虫めがねのアイコンをクリックすると検索ボックスが開くので、「steam」と入力する。すると「Steam installer」というパッケージが見つかるはずなので、あとはクリックして詳細画面を開き、「インストール」というボタンをクリックして指示に従えばいい。
パッケージのインストールが完了しあたら、アクティビティ画面から「steam」を検索して起動しよう。初回起動時には、追加でさまざまなデータのダウンロードや初期設定が行なわれるため、場合によってはしばらく時間がかかるかもしれない。
Steamクライアントが起動すると、見慣れたログイン画面が表示される。「LOGIN TO AN EXISTING ACCOUNT」をクリックして、アカウント名とパスワードを入力しよう。
起動したクライアントを見れば一目瞭然だが、インターフェイスが英語表示となっている。もしも日本語表示の方がよければ、設定で切り替えることも可能だ。
表示言語を切り替えるには、クライアント上部のメニューから「Steam」→「Setteings」をクリックする。設定ウィンドウが開いたら「Interface」をクリックし、「Select the language you wish Steam to use」を「English」から「日本語(Japanese)」に変更して「OK」をクリックしよう。
エルデンリングのインストール
クライアントのインストールと設定が完了したので、いよいよゲーム本体をインストールする。ところがゲームライブラリから「ELDEN RING」を選択しても、インストールボタンはグレーアウトした状態となっており、インストールはできないはずだ。
前述の通り、Linux版のSteamクライアントにはProtonが同梱されており、デフォルトで有効になっている。しかし実際に動かせるゲームは、Valve社がProton経由でのプレイを確認して「ホワイトリスト」に登録されたタイトルに限定されている。つまりエルデンリングのような「公式が動作を確認できていないタイトル」はインストールボタンがグレーアウト状態となり、インストールができなくなっているのだ。
しかし、ホワイトリストに登録されてこそいないが、実際に試してみると動いてしまうタイトルも多く存在する。筆者も手持ちのタイトルのうち、ホワイトリストに登録されていないものを数十本試してみたが、結果はすべてのタイトルがLinux上で動いてしまい、逆に動かないものを見つけることができなかったほどだ。
そのため公式のホワイトリストに限定せず、どのゲームもProtonで動かせるように設定してしまうことをお勧めする。メニューからSteamの設定を開いたら、「Steam Play」にある「他のすべてのタイトルでSteam Playを有効化」にチェックを入れよう。これで互換性が検証されていないタイトルも、インストールすることが可能になる。そもそも過去に購入済みのタイトルであれば、仮に動かなくても損害はないのだから、動いたらラッキーくらいの気持ちで積極的に試してみよう。
もちろんLinuxで動かすことを前提に、未確認のタイトルを新規購入する場合は注意が必要になる。タイトルごとの動作状況などは、ProtonDBで調べることもできるので、先人たちの情報も参考にするといいだろう。言うまでもないが、万が一動作しなくても泣かないのがお約束だ。
これでWindowsと同様に、ゲームのインストールと起動ができる。あとは思う存分、狭間の地の冒険を楽しんで欲しい。
(Tips)ゲームパッドを認識しない時は
アクション系のゲームを快適にプレイするには、ゲームパッドがあると便利だ。USB接続のゲームパッドは数多く市販されているが、どれも基本的に挿すだけで動作し、特別なドライバのインストールや設定などは必要ないことがほとんどだ。筆者はPlayStation 5のDualSenseワイヤレスコントローラーを、USB Type-CケーブルでUbuntu PCに接続しているが、トラブルもなく、快適にゲームをプレイできている。
しかし単に接続しただけでは、正しくキーがアサインされないことがある。そこでゲームパッドを使うのであれば、メニューから「Steam」→「設定」→「コントローラ」→「一般のコントローラ設定」を開き、使用したいパッドの設定サポートにチェックを入れておこう。ここではPS5のパッドを使っているので、「PlayStation設定サポート」を有効にしている。
これだけで、大抵のゲームではゲームパッドが正しく動作するはずだ。しかし筆者の環境では、他のゲームでは動作するものの、エルデンリングでのみゲームパッドを認識せず、正しく操作できない現象が発生した。この問題は、以下の設定を行なうことで回避できたため、同様の現象が起きた場合の参考にして欲しい。
まずメニューから「Steam」→「設定」→「コントローラ」→「デスクトップ設定」を開く。ウィンドウ左下にある「設定を閲覧」ボタンをクリックし、続いて「テンプレート」→「ゲームパッド」をクリックしよう。設定のプレビューが表示されたら「設定を適用」をクリックしてから「決定」をクリックして、設定ダイアログを閉じる。これでエルデンリングでも、ゲームパッドが使えるようになるはずだ。
BigPictureモードでUbuntuをゲーム専用機にする
冒頭で、SteamOSはPCをゲーム専用機のように仕立てることを目的として作られたと述べた。Steamクライアントにもこれと同様の、つまりPCをTVに接続し、全画面を専有し、ゲームパッドで操作することを前提としたインターフェイスが用意されている。Steamではこれを「Big Pictureモード」と呼んでおり、メニューの「表示」→「Big Pictureモード」をクリックするか、キーボードのAlt+Enterキーを押すことで切り替えられる。
メニューの「Steam」→「設定」→「インターフェイス」から、「コンピューターの起動時にSteamを実行する」と「Big PictureモードでSteamを起動」にチェックを入れよう。さらにUbuntuの設定を開き、「ユーザー」→「自動ログイン」をONにしておこう。こうすればPCの電源を入れるだけで、自動的にSteamがフルスクリーンで起動するようになる。キーボードもマウスも不要で、まさにゲーム専用機感覚だ。
このように、Ubuntuを使えば無料で(ここが重要だ)PCをゲーム機に仕立てることもできる。余剰パーツでPCが1台増えてしまったけど、わざわざWindowsを買うのも……というような人は、ゲーム専用Ubuntuをリビングに1台置いてみるのも面白いのではないだろうか。
それではよいゲームライフを!