2021年6月21日月曜日

ウマ娘のティアリングを無くす方法

このブログにまた記事を書く日が来ると思わなかった&ネタの方向性が突拍子も無いのですが同じことで困っている人の助けになればと思い備忘録。



目次

①環境と問題

②解消方法

③実際の手順


〇環境

・PC用 DMM版ウマ娘プリティーダービー
・GPU:AMD Radeon RX570
・Software:Radeon Software バージョン21.4.1


 ●問題

DMM版ウマ娘を触っている人なら等しくイライラを募らせているであろうティアリング問題 

特にウイニングライブ再生時は顕著でとても見ていられない。

愛馬の晴れ舞台に水を差されるこの苦痛を何とかしたい。

 

Tips:ティアリングとは?  出典: フリー百科事典『ウィキペディア(Wikipedia)』

ティアリング(tearing)は、映像を表示するコンピューターディスプレイ装置において、映像が乱れる現象のひとつ。内容としては、映像ソースが1秒間に何コマ生成しているかを示すフレームレートと、映像を表示するディスプレイ側が1秒間に何コマ更新できるかを示すリフレッシュレートが一致しない場合に、複数のフレームが単一のフレームに表示されてしまい、画面が引き裂かれたような映像の乱れが生じる。特に可変フレームレートのコンピュータゲームなどで起きやすい現象。

 

Wikiで示されているように、GPUとディスプレイの描画タイミングの不一致により引き起こされている現象の為、これを解消するには描画タイミングを一致させるように働きかければ良いのですが、困ったことに本来その役割を果たす機能がGPU側にはあるもののDMM版ウマ娘にはその機能が働いていないという状況でした。 


●ティアリングとは実際どれぐらい酷いのか?

を疑似的に示した画像を以下に示します。

※スズカ好きな方ごめんなさい。


正常
ティアリング発生時



〇ティアリング解消方法

本来Radeonが持つティアリング解消機能をウマ娘に対して働かせる。

Radeonが持つティアリング解消機能は2つ

    ・Radeon EnhancedSync

    ・垂直リフレッシュを待機


Radeon EnhancedSyncはフレームレートを落とさずティアリングを低減します。

一方、垂直リフレッシュを待機はVSYNCとも言われる機能でディスプレイ側のリフレッシュレートにゲーム側のフレームレートを同期させる機能。

ディスプレイとの同期を図ってから描画する為、ティアリングは無いが表示までのラグが大きくなりレスポンスを求めるゲームの類には推奨しない機能。

基本的にはRadeon EnhancedSyncで解消できるのが望ましい。


    フレームレート上限とラグの無さ

    Radeon EnhancedSync >> 垂直リフレッシュを待機(VSYNC)

    ティアリング低減力

    垂直リフレッシュを待機(VSYNC) >> Radeon EnhancedSync

※ウマ娘の場合元々アプリケーション側で最大30fpsに制限されており、またゲーム性の面でもラグに結果が左右されるものでもないため、垂直リフレッシュを待機がオススメです




--------------------------------------------------------------------------------

前置きが長くなりましたが

ここからは解決手順です

※あくまでもティアリングの低減のみで全く発生しないわけではありません

※動作環境に依存する為効果を保証しません


1.DMM版ウマ娘の起動ファイル(umamusume.exe)の格納フォルダを把握する

・ウマ娘を起動し、タスクトレイのアイコンを右クリック

・更にumamusume.exeの箇所で右クリック→からのプロパティをクリック

・プロパティ内の場所:に記載された箇所を把握




2.RadeonSoftwareの制御対象にDMM版ウマ娘を追加する

・RadeonSoftwareのゲームタブを選択し、右上の ⁝ を選択
・ゲームを追加を選択
・手順1で把握したディレクトリ内のumamusume.exeを選択し開くをクリック



3.DMM版ウマ娘に対してティアリング低減機能を働かせる
・ゲームタブに追加されたumamusumeを選択
・メニュー左下のRadeon EnhancedSyncもしくは垂直リフレッシュを待機いずれか希望のものを有効に
※前述の通りウマ娘においては垂直リフレッシュを待機をオススメします







手順は以上です。
--------------------------------------------------------------------------------


Steamのゲームは自動的にRadeonSoftwareが認識して制御下に入りますが、DMMGamePlayer内のゲームはRadeonSoftwareが自動認識できずティアリング全開といった感じでした。
ですのでこれを手動にて認識させ制御下に置くというのが今回の趣旨です。

GeForce環境下では垂直同期という名称で同様の事が行われており解決手順が示されているのを散見しましたが、Radeon環境下の解決手法が見当たらなかったので同じことで苦しんでる方の助けになればこれ幸いです。



■追記
2021/6/21 18:15
DMM版ウマ娘を別途フリーソフト等で疑似フルスク―リン化してる方は要注意です。
いずれも疑似ボーダーレス/フルスクリーン時はこのティアリング低減が働きません。
私の環境下では
・フリーソフト側で用意されている疑似フルスクリーン環境下においてはティアリング発生
・ピクセル指定を縦を1ピクセル削って疑似フルスクリーンにならないようにした(タスクバーが表示されている)状況においてはティアリングが一切発生せず
おそらくはフリーソフトの疑似フルスクリーン化の過程でRadeonSoftwareが割り込みできなくなっていると思われます。