Ako zobraziť počítadlo FPS v hrách pre Linux

How Show Fps Counter Linux Games



Linuxové hry dostali veľký tlak, keď Spoločnosť Valve oznámila Podpora Linuxu pre klienta Steam a ich hry v roku 2012. Od tej doby sa mnoho hier AAA a indie dostalo do Linuxu a počet používateľov, ktorí hrajú na Linuxe, sa výrazne zvýšil.

S rastom hrania hier v systéme Linux mnoho používateľov začalo hľadať správne spôsoby zobrazovania počítadla snímok za sekundu (FPS) ako prekrytia spustených hier pre systém Linux. Počítadlo FPS pomáha pri vylepšení výkonu spustených hier a pri porovnávaní celkovej schopnosti počítača hrať hry v rôznych rozlíšeniach.







Bohužiaľ neexistuje jednotný spôsob zobrazovania počítadla FPS vo všetkých hrách pre Linux, ktorý je nezávislý od základných technológií, na ktorých je hra spustená. Rôzne vykresľovače a rozhrania API majú rôzne spôsoby zobrazenia počítadla FPS. Táto príručka vysvetlí rôzne metódy, ktoré je možné použiť na zobrazenie počítadla FPS v hrách pre Linux.



Poznámky k kompatibilite:



  • Funguje s hrami OpenGL a Vulkan.
  • Funguje s natívnymi hrami a Protón Proton je vrstva kompatibility zahrnutá v službe Steam na spúšťanie hier Windows v systéme Linux. Je založená na Víno , DXVK a D9VK open source projekty s ďalšími záplatami a novými funkciami, ktoré pridali vývojári Valve/Wine.
  • Funguje s hrami zakúpenými v službe Steam alebo s hrami tretích strán, ktoré do služby Steam pridal používateľ.
  • Testovaná práca s integrovanými grafickými kartami Intel a AMD.
  • Nebolo testované s kartami NVIDIA, pretože nevlastním kartu NVIDIA. Ale podľa diskusných fór Steam, vstavaný čítač fps funguje dobre na kartách NVIDIA.

Steam pre Linux obsahuje vstavaný čítač FPS, ktorý je možné prepnúť z nastavení. Toto je pravdepodobne jedna z najkompatibilnejších možností, ktorá funguje s väčšinou hier pre Linux. Mal som však problémy s tým, že hry Unity engine nezobrazovali vstavaný čítač FPS. Táto možnosť tiež vyžaduje, aby ste vo svojom systéme mali nainštalovaný účet Steam a klienta Steam.







Steam vám dokonca umožňuje pridať hry, ktoré nie sú zakúpené v službe Steam, do knižnice hier a vstavaný čítač FPS funguje aj v týchto hrách. Ak chcete pridať hru, ktorá nie je Steam, kliknite na Hry a potom kliknite na Pridať hru, ktorá nie je Steam, do mojej knižnice, ako je to znázornené na obrázku nižšie:

Prejdite na umiestnenie svojich herných súborov a potom v spodnej časti prepnite možnosť Všetky súbory.

Vyberte spustiteľný súbor hry a potom kliknite na PRIDAŤ VYBRANÉ PROGRAMY, ako je to znázornené na obrázku nižšie:

Ak chcete spustiť hru iba pre Windows vo vrstve kompatibility Protonu Steam, budete musieť povoliť vo vlastnostiach hry ďalšiu možnosť.

Pridal som spustiteľný súbor SuperTuxKart v knižnici Steam a počítadlo FPS funguje dobre aj tu. Hry tretích strán pridané do knižnice Steam by nemali mať v ceste k umiestneniu súboru žiadne medzery.

Metóda 2 (LibGL)

Poznámky k kompatibilite:

  • Funguje iba s hrami OpenGL.
  • Funguje s natívnymi hrami a Wine hrami.
  • Testovaná práca s integrovanými grafickými kartami Intel a AMD s ovládačmi open source.
  • Nebolo testované s kartami NVIDIA, pretože nevlastním kartu NVIDIA. Malo by to však fungovať s grafickými kartami NVIDIA s ovládačmi open source.

LibGL je knižnica Mesa, ktorá sprístupňuje rozhrania API OpenGL aplikáciám a hrám a je predvolene zahrnutá v takmer všetkých distribúciách Linuxu. Použitím tejto knižnice a iného balíka, ktorý vytvára HUD na viditeľnom displeji, si ukážeme počítadlo FPS v hrách Linux. Spustite nasledujúci príkaz a nainštalujte požadovaný balík:

sudovýstižnýInštaláciaxosd-bin

Ak chcete zobraziť počítadlo FPS v natívnych hrách pre Linux, použite nasledujúci príkaz po nahradení/cesta/k/spustiteľnému súboru vlastnou spustiteľnou cestou hry. Môžete vedieť viac o všetkých možnostiach osd-cat z tu .

LIBGL_SHOW_FPS = 1/cesta/do/spustiteľný 2> & 1 |
tričko /dev /stderr | sed -u -n -e '/^ libGL: FPS = /{s/.* ([^]* ) =/ 1/; p}' |
osd_cat --lines = 1 --color = žltá --outline = 1 --pos = hore --align = vľavo

Ak chcete zobraziť počítadlo FPS v hrách systému Windows spustených v systéme Linux prostredníctvom systému Wine prostredníctvom programu Wine, použite nasledujúci príkaz po nahradení súboru/path/to/executable vlastnou spustiteľnou cestou hry.

WINEDEBUG = fps víno/cesta/do/spustiteľný 2> & 1 | tričko /dev /stderr |
sed -u -n -e '/trace/s /.* približne // p' | osd_cat --lines = 1 --color = žltá
--obrys = 1 --pos = hore --align = stred

Ak používate predponu Wine, príkaz by bol (nahradiť/cesta/do/víno/predpona a/cesta/do/spustiteľný):

WINEDEBUG = fps WINEPREFIX =/cesta/k/vino/predpona vino
/cesta/do/spustiteľný 2> & 1 | tričko /dev /stderr | sed -u -n -e '/ trace/ s/
.*približne // p '| osd_cat --lines = 1 --color = žltá --outline = 1 --pos = top
--align = stred

Táto metóda má malé obmedzenie. Aj keď môžete osd-cat HUD prispôsobiť, zostane na pevnom mieste v oblasti zobrazenia bez toho, aby sa zohľadnila geometria okna hry. Na obrázku vyššie je počítadlo FPS zobrazené nad herným oknom, nie v jeho vnútri. Hry spustené na celej obrazovke tým nie sú dotknuté.

Metóda 3 (Gallium3D)

  • Funguje iba s hrami OpenGL.
  • Funguje s natívnymi hrami a Wine hrami.
  • Testovaná práca s grafickými kartami AMD s ovládačmi open source.
  • Podpora Gallium3D pre Intel stále prebieha, takže zatiaľ nefunguje.
  • Nebolo testované s kartami NVIDIA, pretože nevlastním kartu NVIDIA. Pretože ovládač open source NVIDIA má povolený Gallium3D, táto metóda by mala fungovať.
  • Gallium3D je API, ktoré uľahčuje vývoj ovládačov pre grafické karty poskytovaním sady štandardných knižníc a rozhraní. Open source ovládače AMD a NVIDIA sú postavené na Gallium3D.

    Ak chcete zobraziť počítadlo FPS v natívnych hrách pre Linux, použite nasledujúci príkaz po nahradení/cesta/k/spustiteľnému súboru vlastnou spustiteľnou cestou hry:

    GALLIUM_HUD=„jednoduché, fps“ /cesta/do/spustiteľný

    Ak chcete zobraziť počítadlo FPS v hrách systému Windows spustených v systéme Linux prostredníctvom systému Wine prostredníctvom programu Wine, použite nasledujúci príkaz po nahradení súboru/path/to/executable vlastnou spustiteľnou cestou hry.

    GALLIUM_HUD=„jednoduché, fps“ víno /cesta/do/spustiteľný

    Ak používate predponu Wine, príkaz by bol (nahradiť/cesta/do/víno/predpona a/cesta/do/spustiteľný):

    GALLIUM_HUD = 'jednoduchý, fps' WINEPREFIX =/cesta/do/víno/predpona víno/cesta/do/spustiteľný

    Na obrázku vyššie používam prispôsobenú premennú GALLIUM_HUD, ktorá zobrazuje aj teploty GPU a CPU. Tento vlastný príkaz sa líši pre rôzne konfigurácie počítača. Ak si chcete prečítať viac o všetkých možnostiach prispôsobenia, spustite príkazy:

    sudovýstižnýInštaláciariad
    GALLIUM_HUD=Pomocglxgears

    Len pre referenciu, tu je vlastný príkaz, ktorý som použil na vyššie uvedených snímkach obrazovky:

    GALLIUM_HUD='jednoduché, fps; sensor_temp_cu-amdgpu-pci-1c00.temp1;
    sensor_temp_cu-k10temp-pci-00c3.Tdie '
    /cesta/do/spustiteľný

    Metóda 4 (Prekrývacia tabuľka Vulkan)

    Poznámky k kompatibilite:

    • Funguje iba s hrami Vulkan.
    • Funguje iba s Ubuntu 19.10+ a inými distribúciami s najnovšou verziou Mesa s prekrývacou vrstvou vulkan.
    • Funguje s natívnymi hrami a hrami Steam Proton s podporou DXVK/D9VK.
    • Funguje s hrami Wine spustenými s knižnicami DXVK/D9VK.
    • Pracovný stav pre Wine’s neznámy Vkd3d . Pretože sa jedná o vrstvu Vulkan, mala by fungovať s čímkoľvek, pokiaľ je Mesa postavená s podporou prekrytia VK_LAYER_MESA_overlay.
    • Testovaná práca s grafickými kartami AMD a integrovanými kartami Intel s ovládačmi open source.
    • Nebolo testované s kartami NVIDIA, pretože nevlastním kartu NVIDIA. Pretože sa jedná o vrstvu Vulkan, mala by fungovať s čímkoľvek, pokiaľ je Mesa postavená s podporou prekrytia VK_LAYER_MESA_overlay.

    Prekrývací stôl Vulkan je nová vrstva Vulkan pridaná do nedávnych verzií Mesa. Pomocou prekrytia zobrazuje rôzne informácie o spustenej aplikácii.

    Ak chcete zobraziť počítadlo FPS v natívnych hrách pre Linux, použite nasledujúci príkaz po nahradení/cesta/k/spustiteľnému súboru vlastnou spustiteľnou cestou hry:

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG = pozícia = vľavo hore/cesta/do/spustiteľný

    Ak chcete zobraziť počítadlo FPS v hrách systému Windows spustených v systéme Linux prostredníctvom systému Wine a DXVK, použite nasledujúci príkaz po nahradení súboru/path/to/executable vlastnou spustiteľnou cestou hry:

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG = position = top-left wine/path/to/executable

    Ak používate predponu Wine, príkaz by bol (nahradiť/cesta/do/víno/predpona a/cesta/do/spustiteľný):

    VK_INSTANCE_LAYERS = prekrytie VK_LAYER_MESA_
    VK_LAYER_MESA_OVERLAY_CONFIG = pozícia = vľavo hore
    WINEPREFIX =/cesta/k/víno/predpona víno/cesta/k/spustiteľný

    Metóda 5 (DXVK HUD)

    Poznámky k kompatibilite:

    • Funguje iba s hrami Vulkan bežiacimi vo Wine a Protone s knižnicami DXVK/D9VK.
    • Testovaná práca s AMD a integrovanými grafickými kartami Intel s ovládačmi open source.
    • Nebolo testované s kartami NVIDIA, pretože nevlastním kartu NVIDIA. Zdrojový kód obsahuje záväzky, ktoré uvádzajú podporu NVIDIA, takže táto metóda by mala fungovať.

    DXVK poskytuje prekladateľskú vrstvu na báze Vulkan pre D3D10 a D3D11, ktorá používateľom umožňuje hrať hry Direct3D 10/11 v systéme Linux. D9VK používa backend DXVK na poskytnutie ďalšej implementácie Direct3D9, ktorú je možné použiť na hranie hier postavených na D3D9.

    Ak chcete zobraziť počítadlo FPS v hrách DXVK spustených na Linuxe cez Wine, po nahradení súboru/path/to/executable vlastnou spustiteľnou cestou hry použite nasledujúci príkaz:

    DXVK_HUD= fpsvíno /cesta/do/spustiteľný

    Ak používate predponu Wine, príkaz by bol (nahradiť/cesta/do/víno/predpona a/cesta/do/spustiteľný):

    DXVK_HUD= fpsWINEPREFIX=/cesta/do/víno/predponavíno /cesta/do/spustiteľný

    Toto znamená koniec tohto príspevku. Na záver by som spomenul jeden malý detail zhora vynechaný. Všetky vyššie popísané metódy bez služby Steam budú fungovať aj pre hry Steam. Musíte nahradiť/cesta/do/spustiteľný súbor alebo víno/cesta/do/spustiteľný súbor alebo WINEPREFIX =/cesta/do/vína/predpona víno/cesta/do/spustiteľný súborom príkazom % v rovnakých príkazoch, aké boli použité vyššie. Stačí pridať celý príkaz na spustenie možností vo vlastnostiach hry v aplikácii Steam, ako je to znázornené na obrázku nižšie: