全画面表示の最適化とゲーム モード: オンかオフか?

1 つのもののように論じられがちな 2 つの設定について、Windows 11 でそれぞれ何がわかっているか、両方を無効にするという古い助言がなぜ時代遅れなのか、そして人の答えを受け継ぐ代わりに自分のマシンで確かめる方法を説明します。

まず、正直な一文から。 このページの 3 つのスイッチは、どれもそれだけでフレーム レートを上げるものではありません: 2 つはゲームのフレームが画面に届く経路を決め、3 つ目はゲームが前面にあることを Windows に伝えます。w0a は、どれかがお使いのマシンで何を変えるかを測定していません。そのためこのページでは、各ボックスが何を書き込むか、それをどう読み戻すか、そして自分で測定する方法を正確に示します。

この 2 つはいつも同じ文の中に出てきます (「全画面表示の最適化とゲーム モードをオフにする」は、この分野で最も古い決まり文句の 1 つです)。しかし、これらは無関係なことをする無関係な設定です。そしてこの助言は 10 年前のもので、その間に Windows のほうが変わりました。

ここでは、それぞれが何なのか、何が変わったのか、そして他人のマシンではなく自分のマシンについてこの問いに答える方法を説明します。

全画面表示の最適化とは実際には何か

ゲームが排他的全画面 (ゲームがディスプレイを完全に占有する古いモード) を求めたとき、Windows は代わりに、画面に直接表示できるボーダーレス ウィンドウとしてゲームを動かすことができます。それが「最適化」です: 排他的全画面が壊してしまうもの (速い Alt+Tab、オーバーレイ、通知、自動 HDR) を保ちつつ、条件がそろえば、デスクトップ コンポジターを経由せずにディスプレイに直接表示し続けられます。

それを可能にする仕組みは independent flip と呼ばれます: ゲームのバッファーがディスプレイに直接渡され、コンポジターは脇に退きます。条件がそろわないとき (オーバーレイが重なっている、ウィンドウが本当の全画面ではない、形式が合わない)、表示は 合成にフォールバック し、すべてのフレームに合成の工程が加わり、2 つの間を切り替わるたびにカクつきが生じます。

これで良くなったと感じる人が実際に感じているのは、設定そのものではなく、このフォールバックです。

古い助言が時代遅れな理由

Windows 11 は古い blit の経路を廃止していません。DirectX 12 のゲームは常にフリップ モデルで表示し、下で説明するウィンドウ ゲームの設定は、対象となる DirectX 10 や 11 のゲームを blit から移せますが、どちらにも当てはまらないウィンドウ ゲームは今もすべてのフレームを古い方法でコピーしています。全画面表示の最適化の値は、排他的全画面を求めるゲームに関するものです。w0a は Windows 11 でもこれらを書き込みますが、Windows 11 が今もそれを読み取るかどうかは測定していません。そして w0a は、マシン全体での向上を見つけたと思わせるのではなく、値を書き込むときに表示するメッセージでまさにそのことを伝えます。

もう 1 つ知っておく価値のあることがあります。レジストリの値を互いに引用し合うガイドで、果てしない混乱のもとになっているからです: クリーンな Windows のインストールでは、動作の値はすでに 2 に設定され、「ユーザーの選択を尊重する」フラグは 0 になっています。全画面表示の最適化がオンなのは、そのフラグが 0 だからであって、もう一方の値のせいではありません。 1 つ目の値だけを読んでも何もわからないので、お使いのマシンでは「すでに無効になっている」と言うページは、たいてい読み方を間違えています。

オフにするのが正当な実験になるとき

決してやるなというわけではありません。次の場合には試してみる価値があります:

まずはマシン全体ではなく、ゲームごとに (実行ファイルの「互換性」タブのチェック ボックスで) 行ってください。1 つのゲームの問題は、すべてのゲームの表示方法を変える理由になりません。

そして、何を手放すことになるかを知っておいてください: Alt+Tab が遅くなり、本当の排他的全画面で動くゲームには自動 HDR が適用されず、一部のオーバーレイが描画されなくなります。全画面表示の最適化 修復カードは、まさにこれらの症状を元に戻すためにあります。どのツールが変更したかに関係なく、無条件に Windows の既定値を書き戻します。

もう 1 つの設定: ウィンドウ ゲームの最適化

別のスイッチで、別の Windows のバージョンのものですが、上の設定とよく混同されます。Windows 11 22H2 は ウィンドウ表示またはボーダーレス のゲーム向けの設定を追加しました: Microsoft によると、これは互換性のある DirectX 10 や 11 のゲームを、古い blit の表示からフリップ モデルに移します。これは Microsoft の説明であり、w0a が測定した向上ではありません。22H2 より前では、この値はまったく読み取られません。

w0a はこの設定をオンにでき、ウィンドウ ゲームの表示 カードは w0a 自身が書き込んだ値だけを削除します。Windows のグラフィックの設定で自分で意図的にこの機能をオフにしていた場合、その選択はそのまま残ります。ユーザーが選んだ設定をオフにすることは修復ではありません。

ゲーム モード

すること: ゲームが前面にあることを Windows に伝え、Windows はそれによって一部のバックグラウンド処理を抑え、試合中にドライバーのインストールや再起動の確認が来ないようにします。

役立つ対象: そうしなければ試合中にバックグラウンド処理が入り込むマシンです。お使いのマシンでどれだけ変わるかは測定していません。オンのままにしておく価値があります。

「オフにする」という助言の出どころ: ごく一部のマシンで誰かがこれによる問題を測定して書き記し、その後その助言が全員に広まりました。それは検証できる主張であり、規則ではありません。検証するなら、ほかの変更と同じ方法で検証してください (下で説明します)。

これではないもの: フレーム レートの機能ではありません。数値が動くことを期待しているなら、それを動かすのはこの設定ではありません。

w0a が書き込むもの、ボックスごとに

この話題に関わるボックスは 3 つあります。どれも書き込む前に以前の値を記録するので、w0a が変更した内容を元に戻す の手順で以前の状態に戻せます。下で挙げる修復カードは別のことをします: どのツールが値を変更したかに関係なく、Windows の既定値を書き戻します。

「全画面表示の最適化を無効にする (FSE)」(「最適化」ページ)

HKEY_CURRENT_USER\System\GameConfigStore の下にある、すべて DWORD の 4 つの値です:

値ボックスが書き込む値Windows の既定値 (修復カードが書き戻す値)
GameDVR_FSEBehaviorMode22
GameDVR_HonorUserFSEBehaviorMode10
GameDVR_DXGIHonorFSEWindowsCompatible10
GameDVR_EFSEFeatureFlags0存在しない

1 行目は両側で同じなので、ボックスが実際に変えるのは残りの 3 つの値です。

「Windows のゲーム モードを有効にする」(「最適化」ページ)

HKEY_CURRENT_USER\Software\Microsoft\GameBar の下にある、DWORD 1 の 2 つの値: AutoGameModeEnabled と AllowAutoGameMode です。

「ウィンドウ ゲームの最適化を有効にする (Windows 11 のみ)」(「ゲーム最適化」ページ)

HKEY_CURRENT_USER\SOFTWARE\Microsoft\DirectX\UserGpuPreferences の下のテキスト値 DirectXUserGlobalSettings に結合される 1 組の値 SwapEffectUpgradeEnable=1 です。

自分で確認する

これらのコマンドは読み取るだけです。コマンド プロンプトまたは PowerShell で実行してください:

reg query "HKCU\System\GameConfigStore"
reg query "HKCU\Software\Microsoft\GameBar" /v AutoGameModeEnabled
reg query "HKCU\Software\Microsoft\GameBar" /v AllowAutoGameMode
reg query "HKCU\SOFTWARE\Microsoft\DirectX\UserGpuPreferences" /v DirectXUserGlobalSettings

答えの読み方:

実際にどう決めるか

カウンターはこの問いに答えてくれません: どちらの設定もフレームが画面に届く経路を変えるもので、その違いは平均ではなく、フレームの間隔と遅い側の端に表れます。

  1. ゲームを 1 つと、繰り返せる場面を 1 つ選びます。
  2. 何も変えていない構成を 3 回キャプチャし、自分の実行ごとのばらつきを把握します。この手順が省けない理由は ベンチマークの読み方 で説明しています。
  3. 2 つの設定のうち1 つを変えます。
  4. 同じ場面を同じ方法でキャプチャし、平均ではなく 1% Low を比べます。何を読んでいるのかは 平均 FPS は高いのに 1% Low が悪い で説明しています。
  5. 数値を自分のばらつき以上に動かさなかったものは、すべて元に戻します。

ここで特に見る価値のある数値がもう 1 つあります。保存されたキャプチャには、表示が合成にフォールバックしたタイミングが記録され、カクつき探偵はその回数を独自の検出結果として報告します。その数値が高いなら、役に立つ問いは「FSO をオンにするかオフにするか」ではなく、「何が合成を強いているのか」です。たいていはオーバーレイか、ディスプレイと同じサイズになっていないウィンドウです。

このページにないもの

デスクトップ コンポジターの無効化、MPO のレジストリ値、TDR の値は、どれもこの話題と同じガイドで出回っています。w0a はそれらの書き込みを拒否しており、レジストリの値については理由が記録されています:

w0a はゲームごとの「互換性」のチェック ボックスも設定せず、ゲーム モードをオフにするボックスもありません。以前のツールが上のレジストリ値のどれかを設定していた場合は、ディスプレイとビデオ と GPU のクラッシュ回復 が Windows の既定値に戻します。

関連

ゲームに影響する Windows の設定はどれか、それぞれが誰に役立ち、誰には何の効果もないのか: ゲーム向けに Windows 11 を最適化する方法: 本当に意味のある設定

w0a は、指示されるまで Windows の設定を変更しません。また調整は、新しい値を書き込む前に元の値を保存します。 通知を受け取る

このページは役に立ちましたか?

何が足りなかったか、何がうまくいかなかったかを教えてください。いただいた内容はすべて読んでいます。

送信されるのは、入力した内容とこのページの名前だけです。サーバーは不正利用を防ぐために接続元の IP アドレスも記録し、報告と一緒に削除します。16 歳未満の方は、この欄を使わないでください。 プライバシー ポリシー

このページで解決しなかった場合は、ご連絡ください。どの記事を読んだかを書いていただければ、その記事を修正します。