Najpierw uczciwe zdanie. Żaden z trzech przełączników na tej stronie sam nie podnosi liczby klatek: dwa z nich decydują, jak klatki gry docierają na ekran, a trzeci mówi Windows, że na pierwszym planie jest gra. w0a nie ma pomiaru tego, co którykolwiek z nich zmienia na twojej maszynie, więc ta strona pokazuje dokładnie, co zapisuje każde pole, jak to odczytać i jak zmierzyć to samemu.
Pojawiają się w jednym zdaniu bez przerwy — „wyłącz optymalizacje pełnoekranowe i tryb gry” to jedna z najstarszych linijek w tej dziedzinie — a są niepowiązanymi ustawieniami, które robią niepowiązane rzeczy. Ta rada ma też dziesięć lat, a Windows zmienił się pod nią.
Oto czym jest każde z nich, co się zmieniło i jak odpowiedzieć na to pytanie dla swojej maszyny, a nie dla cudzej.
Czym naprawdę są optymalizacje pełnoekranowe
Kiedy gra prosi o pełny ekran na wyłączność — stary tryb, w którym gra przejmuje ekran na własność — Windows może zamiast tego uruchomić ją jako okno bez ramki, które wciąż prezentuje obraz prosto na ekran. To jest ta „optymalizacja”: zachowujesz rzeczy, które pełny ekran na wyłączność psuje (szybki alt-tab, nakładki, powiadomienia, Auto HDR), i — kiedy warunki są spełnione — zachowujesz prezentację idącą prosto do ekranu, bez postoju u kompozytora pulpitu.
Mechanizm, który to umożliwia, nazywa się independent flip: bufory gry są przekazywane wprost do ekranu, a kompozytor usuwa się z drogi. Kiedy warunki nie są spełnione — nakładka na drodze, okno, które nie jest naprawdę pełnoekranowe, niezgodny format — prezentacja spada z powrotem do kompozycji, każda klatka dostaje doliczony postój u kompozytora, a każde przejście między jednym a drugim ląduje jako szarpnięcie.
To ten spadek, a nie ustawienie, jest tym, co ludzie naprawdę czują, kiedy im to pomaga.
Dlaczego stara rada jest przeterminowana
Windows 11 nie usunął starej ścieżki blit. Gra na DirectX 12 zawsze prezentuje w modelu flip, a ustawienie dla gier okienkowych opisane niżej może przenieść zgodną grę na DirectX 10 lub 11 ze ścieżki blit; ale gra w oknie, której nie obejmuje żadne z nich, nadal kopiuje każdą klatkę po staremu. Wartości optymalizacji pełnoekranowych dotyczą gier, które proszą o pełny ekran na wyłączność. w0a zapisuje je także w Windows 11, ale nie zmierzono, czy Windows 11 nadal je odczytuje — i w0a mówi dokładnie to w komunikacie, który wypisuje przy zapisywaniu tych wartości, zamiast pozwolić ci wierzyć, że właśnie znalazłeś zysk dla całej maszyny.
Jest jeszcze druga rzecz warta wiedzy, bo to źródło niekończącego się zamieszania w poradnikach rzucających w siebie wartościami z rejestru: czysta instalacja Windows przychodzi z wartością zachowania już ustawioną na 2 i z flagą „uszanuj wybór użytkownika” na 0. Optymalizacje pełnoekranowe są włączone dlatego, że ta flaga wynosi 0, a nie dlatego, że tamta druga wartość jest, jaka jest. Odczytanie samej pierwszej wartości nie mówi ci nic — i dlatego strona twierdząca, że twoja maszyna „ma to już wyłączone”, często czyta to źle.
Kiedy wyłączenie tego jest uzasadnionym eksperymentem
Nie „nigdy”. To rozsądna rzecz do spróbowania, kiedy:
- gra jest starszym tytułem DirectX, który naprawdę chce pełnego ekranu na wyłączność;
- kolor, gamma albo HDR zachowują się dziwnie w jednej konkretnej grze;
- nakładka albo narzędzie do przechwytywania psuje się tylko w tej grze.
Zrób to najpierw dla pojedynczej gry — pole wyboru na karcie Zgodność pliku wykonywalnego — a nie dla całej maszyny. Problem jednej gry nie jest powodem, żeby zmieniać sposób prezentacji wszystkich gier.
I wiedz, z czego rezygnujesz: alt-tab robi się wolniejszy, Auto HDR nie działa dla gry chodzącej w prawdziwym pełnym ekranie na wyłączność, a niektóre nakładki przestają się rysować. To dokładnie te objawy, do których cofania istnieje karta naprawcza Optymalizacje pełnoekranowe — zapisuje ona wartości domyślne Windows bezwarunkowo, niezależnie od tego, które narzędzie je zmieniło.
To drugie ustawienie: optymalizacje dla gier w oknie
Inny przełącznik, inna wersja Windows, często mylony z tym powyżej. Windows 11 22H2 dodał ustawienie dla gier w oknie albo w oknie bez ramki: według Microsoftu przenosi ono zgodną grę na DirectX 10 lub 11 ze starszej prezentacji blit na model flip. To opis Microsoftu, a nie zysk zmierzony przez w0a. Przed 22H2 ta wartość w ogóle nie jest czytana.
- Dla kogo: według opisu Microsoftu dla gier na DirectX 10 i 11 w oknie albo w oknie bez ramki; nie zmierzono, czy pomaga na twojej maszynie.
- Komu nie daje nic: każdemu na starszej kompilacji Windows i każdemu, kto już gra w pełnym ekranie na wyłączność.
- Jedna zależność warta wiedzy: przy włączonym Auto HDR Windows sam trzyma tę funkcję włączoną.
w0a potrafi to włączyć, a karta Prezentacja gier w oknie usuwa tylko tę wartość, którą w0a sam zapisał — jeśli wyłączyłeś tę funkcję świadomie w ustawieniach grafiki Windows, ten wybór zostaje nietknięty. Wyłączenie ustawienia, które sam wybrałeś, nie jest naprawą.
Tryb gry
Co robi: mówi Windows, że gra jest na pierwszym planie, więc system przytrzymuje część pracy w tle i nie dopuszcza, żeby instalacje sterowników i prośby o restart przychodziły w środku meczu.
Komu pomaga: maszynie z pracą w tle, która inaczej przyszłaby w środku meczu; ile zmienia na twojej, nie zmierzono. Warto go zostawić włączonym.
Skąd bierze się rada „wyłącz to”: z niewielkiej liczby maszyn, na których ktoś zmierzył z nim problem i to opisał, po czym rada rozeszła się na wszystkich. To teza do sprawdzenia, a nie reguła — a jeśli ją sprawdzasz, sprawdź ją tak, jak powinno się sprawdzać każdą inną zmianę, czyli tak jak poniżej.
Czym nie jest: funkcją od liczby klatek. Jeśli liczysz na to, że jakaś liczba się ruszy, to nie jest ustawienie, które ją rusza.
Co zapisuje w0a, pole po polu
Tego tematu dotykają trzy pola. Każde przed zapisem zapamiętuje poprzednią wartość, więc cofanie zmian przywraca to, co było wcześniej. Karty naprawcze wymienione niżej robią coś innego: zapisują z powrotem wartości domyślne Windows, niezależnie od tego, które narzędzie te wartości zmieniło.
„Wyłącz optymalizacje pełnoekranowe (FSE)” (strona Optymalizacje)
Cztery wartości, wszystkie DWORD, w HKEY_CURRENT_USER\System\GameConfigStore:
| Wartość | Co zapisuje pole | Wartość domyślna Windows (tę zapisuje z powrotem karta naprawcza) |
|---|---|---|
GameDVR_FSEBehaviorMode | 2 | 2 |
GameDVR_HonorUserFSEBehaviorMode | 1 | 0 |
GameDVR_DXGIHonorFSEWindowsCompatible | 1 | 0 |
GameDVR_EFSEFeatureFlags | 0 | brak |
Pierwszy wiersz jest taki sam po obu stronach, więc tak naprawdę pole zmienia pozostałe trzy wartości.
- Kiedy zaczyna działać: przy tym polu w0a nie prosi o ponowne uruchomienie. Microsoft nie mówi, czy gra, która już działa, przejmuje zmianę, więc zamknij grę i uruchom ją ponownie, zanim cokolwiek ocenisz.
- Na Windows 11: w0a zapisuje te cztery wartości także na kompilacji 22000 i nowszych; nie zmierzono, czy Windows 11 nadal je odczytuje, i komunikat, który tam wyświetla, mówi dokładnie to.
- Wszystkie gry, nie jedna: pole zmienia to ustawienie dla każdej gry, którą uruchamia ten użytkownik Windows. Droga dla jednej gry to ta, którą opisuje Microsoft: kliknij prawym przyciskiem plik wykonywalny gry, Właściwości, karta Zgodność, zaznacz Wyłącz optymalizacje pełnoekranowe, Zastosuj. w0a nie ma pola, które ustawiałoby to pole wyboru dla pojedynczej gry, więc to zostaje twoim wyborem.
- Droga powrotu: karta naprawcza Optymalizacje pełnoekranowe zapisuje z powrotem prawą kolumnę.
„Włącz Tryb gry Windows” (strona Optymalizacje)
Dwie wartości, DWORD 1, w HKEY_CURRENT_USER\Software\Microsoft\GameBar: AutoGameModeEnabled i AllowAutoGameMode.
- Pole najpierw czyta. Jeśli obie wartości już wynoszą 1, nic nie zapisuje i mówi ci o tym; nie zgłasza zmiany, której nie zrobiło.
- Na Windows starszym niż Windows 10 w wersji 1703 (kompilacja 15063) nie zapisuje w ogóle nic: tryb gry pojawił się w 1703, a na starszych kompilacjach tych wartości nic by nie czytało.
- Wartość domyślna Windows: gdy wartości nie ma, Windows stosuje własną wartość domyślną. Microsoft podaje ją tylko w odpowiedzi pomocy technicznej, a nie w żadnej dokumentacji zasad ani ustawień, więc komunikat w0a jej nie wymienia, a ta strona też nie.
- Kiedy zaczyna działać: przy tym polu w0a nie prosi o ponowne uruchomienie.
- Droga powrotu: żadna karta naprawcza nie resetuje tych dwóch wartości. Cofanie zmian przywraca to, co było, zanim pole zadziałało.
„Włącz optymalizacje dla gier w oknie (tylko Windows 11)” (strona Optymalizacja gry)
Jedna para, SwapEffectUpgradeEnable=1, dopisana do wartości tekstowej DirectXUserGlobalSettings w HKEY_CURRENT_USER\SOFTWARE\Microsoft\DirectX\UserGpuPreferences.
- Dopisana, nie nadpisana: ten sam tekst przechowuje też twoje wybory Auto HDR, zmiennej częstotliwości odświeżania i domyślnej karty graficznej, a pole je zachowuje. Jeśli nie może odczytać obecnego tekstu, nic nie zapisuje i mówi o tym.
- Wersja Windows: przed Windows 11 w wersji 22H2 (kompilacja 22621) pole nic nie zapisuje i mówi, że ustawienie nie ma zastosowania.
- Co według Microsoftu obejmuje: gry DirectX 10 i DirectX 11 działające w oknie albo w oknie bez ramki. Microsoft opisuje to jako przeniesienie zgodnych gier ze starszej prezentacji w modelu blt do modelu flip, z mniejszym opóźnieniem; to opis Microsoftu, a nie pomiar wykonany na twojej maszynie.
- Własny przełącznik Windows: Ustawienia > System > Wyświetlacz > Grafika, a w ustawieniach domyślnych przełącznik Optymalizacje dla gier w oknie. Dla jednej gry: Opcje niestandardowe dotyczące aplikacji, gra, Opcje. Strona Microsoftu nie mówi, czy przełącznik jest na początku włączony, czy wyłączony.
- Auto HDR: włączenie Auto HDR automatycznie włącza tę funkcję, a żeby ją wyłączyć, trzeba najpierw wyłączyć Auto HDR.
- Kiedy zaczyna działać: Microsoft każe uruchomić grę ponownie.
- Droga powrotu: karta Prezentacja gier w oknie usuwa z globalnego tekstu tylko
SwapEffectUpgradeEnable=1.SwapEffectUpgradeEnable=0, które ustawiłeś sam, i wszelkie wpisy dla pojedynczych gier zostają, jakie są. - Co robi z tym skan przycięć: wspomina o tym ustawieniu tylko wtedy, gdy globalny tekst wprost mówi
SwapEffectUpgradeEnable=0, jako informację i bez karty naprawczej, bo ta wartość jest czyimś świadomym wyborem.
Sprawdź sam
Te polecenia tylko czytają. Uruchom je w wierszu polecenia albo w 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
Jak czytać odpowiedzi:
- Wartości DWORD są wypisywane szesnastkowo. Wiersz taki jak
GameDVR_FSEBehaviorMode REG_DWORD 0x2oznacza 2;0x1oznacza 1, a0x0oznacza 0. - Pierwsze polecenie wypisuje każdą wartość w kluczu. Porównaj cztery nazwy z tabelą powyżej; brak
GameDVR_EFSEFeatureFlagsna liście to wartość domyślna Windows. - Gdy wartość, o którą zapytałeś po nazwie, nie istnieje,
reg querykończy się błędem zamiast wypisać wiersz. Dla dwóch wartości trybu gry oznacza to „nie ustawiono” i obowiązuje własna wartość domyślna Windows. - Ostatnie polecenie wypisuje jeden wiersz par
Name=Value;.SwapEffectUpgradeEnable=1oznacza, że funkcję włączono, polem albo przełącznikiem w Ustawieniach;SwapEffectUpgradeEnable=0oznacza, że ktoś wyłączył ją celowo; brak takiej pary oznacza, że nic nie ustawiło jej dla wszystkich gier.
Jak naprawdę zdecydować
Licznik nie odpowie ci na to pytanie: oba ustawienia zmieniają sposób, w jaki klatki docierają na ekran, co widać w równomierności i w ogonie rozkładu, a nie w średniej.
- Wybierz jedną grę i jedną powtarzalną scenę.
- Zmierz niezmienioną konfigurację trzy razy, żeby poznać własny szum między przebiegami. Jak czytać wynik benchmarku tłumaczy, dlaczego ten krok nie jest opcjonalny.
- Zmień jedno z dwóch ustawień.
- Zmierz tę samą scenę w ten sam sposób i porównaj 1% low — nie średnią. Wysoki średni FPS, ale słabe 1% low tłumaczy, co czytasz.
- Cofnij wszystko, co nie ruszyło żadnej liczby poza twój własny szum.
Jest tu jeszcze jedna liczba warta obserwacji. Zapisany przebieg notuje, kiedy prezentacja spadła do kompozycji, a skan przycięć zgłasza to jako własne znalezisko wraz z liczbą wystąpień. Jeśli ta liczba jest wysoka, użytecznym pytaniem nie jest „FSO włączone czy wyłączone”, tylko „co wymusza kompozycję” — zwykle nakładka albo okno, które nie ma rozmiaru ekranu.
Czego nie ma na tej stronie
Wyłączanie kompozytora pulpitu, wartości MPO w rejestrze i wartości TDR krążą w tych samych poradnikach co ten temat. w0a odmawia ich zapisania, a dla wartości rejestru powody są udokumentowane:
OverlayTestModeiDisableOverlayswyłączają nakładanie wielopłaszczyznowe (MPO). Na prawdziwej maszynie z Windows 11 25H2 zamrażały CS2 całkowicie i powtarzalnie: cały komputer, nie tylko grę.TdrDelayiTdrDdiDelaywydłużają watchdog sterownika grafiki, przez co każde zawieszenie trwa tylko dłużej;TdrLevelcałkowicie wyłącza odzyskiwanie.EnablePreemptionto wartość debugowania modelu sterowników bez zmierzonej korzyści dla klatek, a odbiera karcie graficznej zdolność wyjścia z zawieszonego obciążenia.
w0a nie ustawia też pola wyboru zgodności dla pojedynczej gry i nie ma pola, które wyłączałoby tryb gry. Jeśli poprzednie narzędzie ustawiło którąkolwiek z powyższych wartości rejestru, Ekran i wideo i Odzyskiwanie po awarii GPU przywracają wartości domyślne Windows.
Powiązane
- Optymalizacja Windows 11 pod gry: ustawienia, które naprawdę mają znaczenie
- Dlaczego gry przycinają na Windows 11
- Jak czytać wynik benchmarku
- Prezentacja gier w oknie
- Cofanie zmian wprowadzonych przez w0a
- Niskie FPS i przycięcia w CS2
Które ustawienia Windows coś zmieniają w grze, komu każde z nich pomaga i komu nie daje nic: Optymalizacja Windows 11 pod gry: ustawienia, które naprawdę mają znaczenie
Czy ta strona pomogła?
Czego zabrakło albo co nie zadziałało? Czytamy każdą taką wiadomość.
Jeśli ta strona nie rozwiązała problemu, napisz do nas — podaj, który artykuł czytasz, a poprawimy ten artykuł.