本の虫

著者:江添亮
ブログ: http://cpplover.blogspot.jp/
メール: boostcpp@gmail.com
Twitter: https://twitter.com/EzoeRyou
GitHub: https://github.com/EzoeRyou

アマゾンの江添のほしい物リストを著者に送るとブログ記事のネタになる

筆者にブログのネタになる品物を直接送りたい場合、住所をメールで質問してください。

GNU/Linux版Steamがクソすぎる件

正確に言うと、Steam Runtimeがクソすぎる。

GNU/Linux版のSteamは、ユーザースペースをごっそり自前で用意している。これはSteam Runtimeと呼ばれている。steamランチャーとsteamのゲームは、Steam Runtimeでchrootされた環境で実行される。

GNU/Linuxにおいてプログラムをバイナリブロブで配布して実行する場合、ユーザースペースをすべて同梱した上でchrootして実行するのは手っ取り早く互換性を保てる方法だ。問題は、バイナリはそのまま時代に遅れていくということだ。

現在のSteam Runtimeは、Ubuntu 12.04のユーザースペースのものである。実に4年も前のバイナリを使っているわけだ。

事の発端は、GNU/Linuxで動かすfactorioのFPSが安定しないということだった。私が構築したゲーム用のGNU/Linux環境は、GeForce GTX670MXを使っている。数世代前のGPUとはいえ、factorioを動かすのに問題があるとは思えない。

STEAM_RUNTIME=0することで、steamランタイムを無効化できるのだが、依存するi386版のshared libraryを全部インストールしても、まだvgui2_s.soが見つからず起動できない。これはsteam側のshared libraryのようだ。

ところで、factorioの公式サイトのアカウントは、factorioを購入済みのSteamアカウントと紐付けることで、factorioのSteam DRMのかかっていないバイナリを落とすことができる。このバイナリで試してみたところ、なんとFPSが60で安定した。

結論、GNU/Linux版Steamはクソ