座敷牢日誌

都落ちした元SEがソフトウェアやネット関連のことを書いています

AMD Radeon GPU + Linux 環境下でUNDERTALE (Steam) をプレイする

この記事は、ArchLinuxをインストールしたPCでUNDERTALE (Steam) をプレイできるよういするまでの顛末です。

序説

家内がプレイ動画を観て気に入ったらしい「UNDERTALE」というゲームの話ばかりする。 いくつかのプラットフォームで遊べるらしいが、SwitchもVITAもない我が家にあるものでいうと、LinuxがインストールされたPCにSteamを入れて遊ぶほかはなさそうだった。

ものは試しにということで、SteamをインストールしてUNDERTALEを購入して遊ぼうとしても、起動せずクラッシュ。

Linux環境下のSteamで、この類の問題は起きるだろうと思ってはいた。コアダンプ読んだり、不足ライブラリに原因があるのではと、いろいろ試行してみたが解決せず。

試しにと思って、Ubuntu 18.04 がインストールされたノートPCにSteamをインストールしてみると起動してしまった。なぜだ……。

しかし、ノートパソコンの小さなモニタにゲームパッドをぶらさげて遊ぶ気にはなれず、放置。それから幾年が経過。

AMD Radeon GPU に問題があった? 起動オプション指定で解決

結論から述べると、問題にしていたPCでもUNDERTALEを起動できるようになった。

forge.dotslashplay.it

このイシューのやりとりのなかで次のコメントを見つけた。

Forcing software rendering with LIBGL_ALWAYS_SOFTWARE=true does not trigger this crash, at the cost of very high CPU usage.

コメントのとおり、UNDERTALEの起動オプションの先頭に LIBGL_ALWAYS_SOFTWARE=1 を加えてやると起動できるようになった。 ただし、指摘されているように、CPU使用率は爆上げしてしまう。プレイに支障はなさそうだったので、いったんは解決。

参考までに、UNDERTALEが起動できないと問題にしていたPCのハードウェア構成は、CPU AMD Ryzen 5 3600、GPU PowerColor AMD Radeon RX5500 XT、メモリ 32GB。 問題なくきどうできたUbuntu 18.04のPCはivy bridge世代の Intel Core7 CPUを搭載したけっこう古めのノートパソコンで、もちろんグラフィック統合版。

詳細までは調べる予定はないのですが、いまのところAMDGPUに原因がある可能性が濃厚そうだとはいえそうです。