FPS számláló megjelenítése a Linux játékoknál

How Show Fps Counter Linux Games



A Linux játék nagy lendületet kapott, amikor - jelentette be a Valve Linux támogatás a Steam klienshez és játékaihoz 2012 -ben. Azóta sok AAA és indie játék került a Linux felé, és a Linuxon játszó felhasználók száma jelentősen megnőtt.

A Linux -játékok növekedésével sok felhasználó elkezdett keresni a megfelelő módokat a képkocka / másodperc (FPS) számláló megjelenítésére fedvényként a futó Linux -játékoknál. Az FPS számláló segít a futó játékok teljesítményének javításában, valamint a számítógép általános képességének összehasonlításában különböző felbontásban.







Sajnos nincs egyetlen egységes módja annak, hogy az FPS számlálót minden Linux játékban megjelenítsük, amely független a futó technológiától. A különböző megjelenítők és API -k különböző módon jelenítik meg az FPS számlálót. Ez az útmutató elmagyaráz különböző módszereket, amelyek segítségével FPS számlálót lehet megjeleníteni Linux játékokban.



Kompatibilitási megjegyzések:



  • Működik OpenGL és Vulkan játékokkal.
  • Natív játékokkal és Proton A Proton egy kompatibilitási réteg, amelyet a Steam tartalmaz a Windows játékok Linux alatt történő futtatásához. Azon alapul Bor , DXVK és D9VK nyílt forráskódú projektek további javításokkal és a Valve/Wine fejlesztők által hozzáadott új funkciókkal.
  • Működik a Steamen vásárolt játékokkal vagy a felhasználó által a Steamhez hozzáadott harmadik féltől származó játékokkal.
  • Beépített Intel és AMD grafikus kártyákkal tesztelve.
  • Nem teszteltem NVIDIA kártyákkal, mivel nem rendelkezem NVIDIA kártyával. De a Steam közösségi fórumok szerint a beépített fps számláló jól működik az NVIDIA kártyákon.

A Steam for Linux beépített FPS számlálót tartalmaz, amely a beállítások között váltható. Ez valószínűleg az egyik leginkább kompatibilis opció, amely a Linux játékok többségével működik. Volt azonban néhány problémám azzal, hogy a Unity motorjátékok nem jelenítették meg a beépített FPS számlálót. Ez a lehetőség azt is megköveteli, hogy Steam -fiókja és Steam -ügyfele legyen telepítve a rendszerre.







A Steam lehetővé teszi a Steamtől nem vásárolt játékok hozzáadását a játékkönyvtárhoz, és a beépített FPS számláló ezekben a játékokban is működik. Nem gőz játék hozzáadásához kattintson a Játékok, majd a Nem gőzös játék hozzáadása a könyvtárhoz lehetőségre, amint az az alábbi képernyőképen látható:

Keresse meg a játékfájlok helyét, majd válassza az Összes fájl opciót az alján.

Válassza ki a futtatható játékot, majd kattintson a KIVÁLASZTOTT PROGRAMOK HOZZÁADÁSA gombra az alábbi képernyőképen látható módon:

Ha csak Windows játékot szeretne futtatni a Steam Proton kompatibilitási rétegében, akkor egy további lehetőséget kell engedélyeznie a játék tulajdonságaiban.

Hozzáadtam a SuperTuxKart futtatható fájlt a steam könyvtárban, és az FPS számláló itt is jól működik. Ne feledje, hogy a Steam könyvtárhoz hozzáadott harmadik féltől származó játékok nem tartalmazhatnak szóközt a fájlok elérési útjában.

2. módszer (LibGL)

Kompatibilitási megjegyzések:

  • Csak OpenGL játékokkal működik.
  • Natív játékokkal és borjátékokkal működik.
  • Tesztelt, hogy integrált Intel és AMD grafikus kártyákkal működik, nyílt forráskódú illesztőprogramokkal.
  • Nem teszteltem NVIDIA kártyákkal, mivel nem rendelkezem NVIDIA kártyával. Ennek azonban működnie kell a nyílt forráskódú illesztőprogramokkal rendelkező NVIDIA GPU -kkal.

LibGL egy Mesa könyvtár, amely az OpenGL API -kat alkalmazásoknak és játékoknak teszi ki, és alapértelmezés szerint szinte minden Linux disztribúcióban megtalálható. Ezt a könyvtárat és egy másik csomagot használva, amely HUD -t hoz létre a látható kijelzőn, FPS -számlálót mutatunk a Linux -játékokban. Futtassa a következő parancsot a szükséges csomag telepítéséhez:

sudotalálótelepítésxosd-bin

Ha meg szeretné jeleníteni az FPS számlálót natív Linux játékokban, használja az alábbi parancsot, miután a/path/to/executable fájlt saját játék futtatható útvonalával helyettesítette. Tudjon meg többet az összes osd-cat lehetőségről itt .

LIBGL_SHOW_FPS = 1/path/to/executable 2> & 1 |
tee /dev /stderr | sed -u -n -e '/^ libGL: FPS = /{s/.* ([^]* ) =/ 1/; p}' |
osd_cat --lines = 1 -szín = sárga -outline = 1 --pos = top -igazítás = bal

Ha meg szeretné jeleníteni az FPS számlálót a Windows játékokban, amelyek Linuxon futnak a Wine -en keresztül, használja az alábbi parancsot, miután a/path/to/executable fájlt a saját végrehajtható elérési útjával helyettesítette.

WINEDEBUG = fps wine/path/to/executable 2> & 1 | tee /dev /stderr |
sed -u -n -e '/trace/s /.* kb // p' | osd_cat --lines = 1 --color = sárga
-outline = 1 --pos = top --align = center

Ha Wine előtagot használ, a parancs a következő lesz:

WINEDEBUG = fps WINEPREFIX =/path/to/wine/előtag bor
/path/to/executable 2> & 1 | tee /dev /stderr | sed -u -n -e '/ trace/ s/
.*kb // p '| osd_cat --lines = 1 -szín = sárga -outline = 1 --pos = top
--align = center

Ennek a módszernek van egy kis korlátja. Míg testreszabhatja az osd-cat HUD-t, az rögzített helyen marad a megjelenítési területen anélkül, hogy figyelembe venné a játékablak geometriáját. A fenti képernyőképen az FPS számláló a játékablak felett látható, nem pedig azon belül. A teljes képernyős játékokat ez nem érinti.

3. módszer (Gallium3D)

  • Csak OpenGL játékokkal működik.
  • Natív játékokkal és borjátékokkal működik.
  • Tesztelt, hogy működik -e AMD grafikus kártyákkal nyílt forráskódú illesztőprogramokkal.
  • Az Intel Gallium3D támogatása folyamatos, tehát még nem működik.
  • Nem teszteltem NVIDIA kártyákkal, mivel nem rendelkezem NVIDIA kártyával. Mivel az NVIDIA nyílt forráskódú illesztőprogramja Gallium3D funkcióval rendelkezik, ennek a módszernek működnie kell.
  • Gallium3D egy API, amely megkönnyíti a grafikus kártyák illesztőprogramjainak fejlesztését azáltal, hogy szabványos könyvtárakat és interfészeket biztosít. Az AMD és az NVIDIA nyílt forráskódú illesztőprogramjai a Gallium3D -re épülnek.

    Ha meg szeretné jeleníteni az FPS számlálót natív Linux játékokban, használja az alábbi parancsot, miután a/path/to/executable fájlt saját játék végrehajtható elérési útjával helyettesítette:

    GALLIUM_HUD='egyszerű, fps' /pálya/nak nek/végrehajtható

    Ha meg szeretné jeleníteni az FPS számlálót a Windows játékokban, amelyek Linuxon futnak a Wine -en keresztül, használja az alábbi parancsot, miután a/path/to/executable fájlt a saját végrehajtható elérési útjával helyettesítette.

    GALLIUM_HUD='egyszerű, fps' bor /pálya/nak nek/végrehajtható

    Ha Wine előtagot használ, a parancs a következő lesz:

    GALLIUM_HUD = 'egyszerű, fps' WINEPREFIX =/path/to/wine/bor prefix/path/to/executable

    A fenti képernyőképen egy testreszabott GALLIUM_HUD változót használok, amely a GPU és a CPU hőmérsékletét is mutatja. Ez az egyéni parancs a különböző PC -konfigurációk esetén eltérő. Ha többet szeretne megtudni az összes testreszabási lehetőségről, futtassa a következő parancsokat:

    sudotalálótelepítésasztali eszközök
    GALLIUM_HUD=Segítségglxgears

    Csak referenciaként itt van az Egyéni parancs, amelyet a fenti képernyőképeken használtam:

    GALLIUM_HUD='egyszerű, fps; sensors_temp_cu-amdgpu-pci-1c00.temp1;
    sensors_temp_cu-k10temp-pci-00c3.Tdie '
    /pálya/nak nek/végrehajtható

    4. módszer (Vulkan Overlay Table)

    Kompatibilitási megjegyzések:

    • Csak Vulkan játékokkal működik.
    • Csak Ubuntu 19.10+ és más disztribúciókkal működik, amelyek a legújabb Mesa vulkan overlay réteggel rendelkeznek.
    • Működik natív játékokkal és DXVK/D9VK támogatással futó Steam Proton játékokkal.
    • Működik a DXVK/D9VK libs programokkal futó Wine játékokkal.
    • A Wine's működési állapota ismeretlen Vkd3d . Mivel ez egy Vulkan réteg, mindennek működnie kell, amíg a Mesa VK_LAYER_MESA_overlay támogatással készült.
    • Az AMD grafikus kártyákkal és az integrált, nyílt forráskódú illesztőprogramokkal rendelkező Intel -kártyákkal való működés tesztelt.
    • Nem teszteltem NVIDIA kártyákkal, mivel nem rendelkezem NVIDIA kártyával. Mivel ez egy Vulkan réteg, mindennek működnie kell, amíg a Mesa VK_LAYER_MESA_overlay támogatással készült.

    Vulkan fedőasztal egy új Vulkan réteg a Mesa legutóbbi építéseihez. Különféle információkat jelenít meg a futó alkalmazásról egy fedvény segítségével.

    Ha meg szeretné jeleníteni az FPS számlálót natív Linux játékokban, használja az alábbi parancsot, miután a/path/to/executable fájlt saját játék végrehajtható elérési útjával helyettesítette:

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG = pozíció = bal felső/útvonal/to/végrehajtható

    Ha meg szeretné jeleníteni az FPS számlálót a Windows játékokban, amelyek Linuxon futnak a Wine és a DXVK segítségével, használja az alábbi parancsot, miután a/path/to/executable fájlt lecserélte a saját végrehajtható elérési útjára:

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG = pozíció = bal felső bor/útvonal/a/végrehajtható

    Ha Wine előtagot használ, a parancs a következő lesz:

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_laylay
    VK_LAYER_MESA_OVERLAY_CONFIG = pozíció = bal felső
    WINEPREFIX =/path/to/wine/bor előtag/path/to/végrehajtható

    5. módszer (DXVK HUD)

    Kompatibilitási megjegyzések:

    • Csak Wine és Proton programokban futó Vulkan játékokkal működik, DXVK/D9VK libs -el.
    • Tesztelve az AMD -vel és integrált Intel grafikus kártyákkal, nyílt forráskódú illesztőprogramokkal.
    • Nem teszteltem NVIDIA kártyákkal, mivel nem rendelkezem NVIDIA kártyával. A forráskód olyan kötelezettségvállalásokat tartalmaz, amelyek megemlítik az NVIDIA támogatását, így ennek a módszernek működnie kell.

    A DXVK egy Vulkan-alapú fordítási réteget biztosít a D3D10 és a D3D11 számára, lehetővé téve a felhasználók számára a Direct3D 10/11 játékok lejátszását Linuxon. A D9VK a DXVK háttérprogramot használja, hogy további Direct3D9 megvalósítást nyújtson, amellyel a D3D9 -re épülő játékok játszhatók.

    Ha meg szeretné jeleníteni az FPS számlálót a DXVK játékokban, amelyek Linuxon futnak a Wine -en keresztül, használja az alábbi parancsot, miután lecserélte a/path/to/executable fájlt a saját végrehajtható elérési útjára:

    DXVK_HUD= fpsbor /pálya/nak nek/végrehajtható

    Ha Wine előtagot használ, a parancs a következő lesz:

    DXVK_HUD= fpsWINEPREFIX=/pálya/nak nek/bor/előtagbor /pálya/nak nek/végrehajtható

    Ez a bejegyzés végét jelzi. Befejezésül megemlítenék egy apró részletet, amelyet felülről kihagytak. A fent leírt összes nem gőz módszer a Steam játékoknál is működik. A/path/to/executable vagy wine/path/to/executable vagy WINEPREFIX =/path/to/wine/bor prefix wine/path/to/executable parancsot a % paranccsal % kell kicserélni a fent használt parancsokban. Csak adja hozzá a teljes parancsot a Steam alkalmazáson belüli játéktulajdonságok indításához, amint az az alábbi képernyőképen látható: