FF14をLinuxの仮想環境で動かす話・その1
今から1年ほど前、PS4でFF14をしていたのですが、自宅サーバーとしても動かしているLinux PCと2台並んでいるのは結構邪魔なので、なんとか1台にしようとしていました。そこでWindowsとLinuxのデュアルブートのPCに切り換えようとしたのですが、デュアルブートも面倒なところがあるので、ふと仮想環境で動いちゃったりはしないだろうか、と思って試してみました。普通はWindows上でHyper-VとかVirtualBoxでLinux環境を動かすものだと思うのですが、Windowsに個人的に不信感があって、PCの根っこを握られるのはできれば避けたい、という理由から、LinuxのKVMでWindowsとFF14を動かそうとしたら結構動いてしまいました。
ただ、日本ではあまりデスクトップPCでLinux使う人が少ないし、Arch Linuxの記事を除くと、日本語ではLinuxの仮想環境でゲームをするという具体的な情報があまりありません。この記事では、誰かの役に立つのかどうかはわかりませんが、Arch Linuxの記事に従いながら、LinuxのKVMでFF14を動かしているうちの環境と設定を紹介していきます。
ちなみに、ベンチマークはこのくらいになります。ベアメタル環境で動かしたときから10%くらい性能劣化していると思います。
準備
規約の確認
まずは規約の確認です。技術的に可能でも規約で禁止されていたらできません。ファイナルファンタジー® XIV ソフトウェア使用許諾契約を見ると
あなたのコンピュータ又は家庭用ゲーム機(本ソフトウェアによって適宜)にインストールして使用することができ
という書き方になっていて、仮想環境を禁止している雰囲気はなさそうです。
まあ…
(a) 本ソフトウェアを改変、リバースエンジニアリングによる解析、逆コンパイル、「ハッキング」又は逆アセンブルすること、 (中略) すべて禁止されています。
ってあるから、アレとかソレとかアウトのはずなんだけど、黙認されている現状だとねぇ…
とはいえ、規約の解釈は個人で行わないといけないものなので、この記事の内容は鵜呑みにせず各自で判断してください。
ハードウェア構成
うちのPCのハードウェア構成です。単純な仮想環境だと当然ゲームができる性能にはならないので、PCIパススルーというものを利用してGPUをパススルーします。PCIパススルーを利用する関係で、IntelのCPUの場合は システムがVT-x/VT-dに対応していることが必要 となります。
- MB: ASUS Z170-A
- CPU: Intel Core i7-6700K
- RAM: 32GB
- iGPU: HD Graphics 530
- dGPU: GeForce GTX 1080
- xHCI: Sunrise Point-H, ASM1142の2つ
ホストOSソフトウェア環境
仮想環境を実現するためのソフトウェアの構成です。
基本的に現在の最新ですが、ovmfのみqemuの最新バージョンとの相性が悪いので、Testingから持ってきています。カーネルはRTパッチを当てなくてもいい、というかむしろ自力コンパイルも必要ないと思います(ほとんど趣味です)。
仮想環境構成
- Machine: Q35
- CPU: Intel Core i7-6700K(3コアのみパススルー)
- RAM: 8GB
- dGPU: GeForce GTX 1080(PCIパススルー)
- xHCI: ASM1142(PCIパススルー)
iGPU(Intel CPU内蔵のGPU)、xHCIのうちSunrise Point-HはホストOS側で使用します。
次回から、具体的な話に入っていきます。