Spel

Hur man visar FPS-räknare i Linux-spel

Hur man visar FPS-räknare i Linux-spel
Linux-spel fick ett stort tryck när Valve tillkännagav Linux-stöd för Steam-klient och deras spel 2012. Sedan dess har många AAA- och indiespel tagit sig till Linux och antalet användare som spelar på Linux har ökat avsevärt.

Med tillväxten av Linux-spel började många användare leta efter rätt sätt att visa "frames per second" (FPS) -räknare som ett överlägg på att köra Linux-spel. En FPS-räknare hjälper till att anpassa prestanda för löpande spel såväl som för att benchmarka en dators övergripande förmåga att spela spel i olika upplösningar.

Tyvärr finns det inget enda enhetligt sätt att visa FPS-räknare i alla Linux-spel som är oberoende av underliggande teknik som ett spel körs på. Olika renderare och API: er har olika sätt att visa FPS-räknare. Den här guiden förklarar olika metoder som kan användas för att visa en FPS-räknare i Linux-spel.

Metod 1 (ånga)

Kompatibilitetsanmärkningar:

Steam för Linux innehåller en inbyggd FPS-räknare som kan växlas från inställningar. Detta är förmodligen ett av de mest kompatibla alternativen som fungerar med en majoritet av Linux-spel. Men jag hade några problem med Unity engine-spel som inte visade den inbyggda FPS-räknaren. Detta alternativ kräver också att du har ett Steam-konto och Steam-klient installerat på ditt system.

Steam låter dig till och med lägga till spel som inte köpts från Steam till spelbiblioteket och den inbyggda FPS-räknaren fungerar också i dessa spel. För att lägga till ett spel som inte är ånga, klicka på "Spel" och klicka sedan på "Lägg till ett spel som inte är ånga i mitt bibliotek", som visas i skärmdumpen nedan:

Bläddra till platsen för dina spelfiler och växla sedan alternativet "Alla filer" längst ner.

Välj det körbara programmet och klicka sedan på “LÄGG TILL Valda program” som visas på skärmdumpen nedan:

Om du vill köra ett enda Windows-spel i Steams Proton-kompatibilitetslager måste du aktivera ett ytterligare alternativ i spelegenskaper.

Jag har lagt till SuperTuxKart körbar i ångbiblioteket, och FPS-räknaren fungerar också bra här. Observera att spel från tredje part som läggs till i Steam-biblioteket inte bör ha några mellanslag i filens sökväg.

Metod 2 (LibGL)

Kompatibilitetsanmärkningar:

LibGL är ett Mesa-bibliotek som exponerar OpenGL-API: er för appar och spel och det ingår som standard i nästan alla Linux-distributioner. Med hjälp av detta bibliotek och ett annat paket som skapar en HUD på synlig display, visar vi en FPS-räknare i Linux-spel. Kör följande kommando för att installera det önskade paketet:

sudo apt installera xosd-bin

För att visa FPS-räknare i inbyggda Linux-spel använder du kommandot nedan efter att du har ersatt / path / to / executable med din egen spårbara körsökväg. Du kan veta mer om alla OSD-cat-alternativ härifrån.

LIBGL_SHOW_FPS = 1 / sökväg / till / körbar 2> & 1 |
tee / dev / stderr | sed -u -n -e '/ ^ libGL: FPS = / s /.* \ ([^] * \) = / \ 1 /; p '|
osd_cat --lines = 1 --color = gul - outline = 1 --pos = top --align = left

För att visa FPS-räknare i Windows-spel som körs på Linux via Wine använder du kommandot nedan efter att du har ersatt / path / to / executable med din egen spårbara körsökväg.

WINEDEBUG = fps vin / sökväg / till / körbar 2> & 1 | tee / dev / stderr |
sed -u -n -e '/ spår / s /.* ungefär // p '| osd_cat --lines = 1 - färg = gul
--disposition = 1 --pos = top --align = center

Om du använder ett vinprefix skulle kommandot vara (ersätt / sökväg / till / vin / prefix och / sökväg / till / körbar):

WINEDEBUG = fps WINEPREFIX = / sökväg / till / vin / prefix vin
/ sökväg / till / körbar 2> & 1 | tee / dev / stderr | sed -u -n -e '/ spår / s /
.* ungefär // p '| osd_cat --lines = 1 --färg = gul - outline = 1 --pos = topp
--justera = mitt

Denna metod har en liten begränsning. Medan du kan anpassa osd-cat HUD, förblir den på en fast position på displayområdet utan att ta hänsyn till spelfönstrets geometri. I skärmdumpen ovan visas FPS-räknare ovanför spelfönstret, inte inuti det. Spel som körs i helskärm påverkas inte av detta.

Metod 3 (Gallium3D)

  • Fungerar bara med OpenGL-spel.
  • Fungerar med inbyggda spel och vinspel.
  • Testat att arbeta med AMD-grafikkort med drivrutiner med öppen källkod.
  • Gallium3D-stöd för Intel pågår, så fungerar inte ännu.
  • Oprövad med NVIDIA-kort eftersom jag inte äger ett NVIDIA-kort. Eftersom NVIDIA-drivrutinen med öppen källkod är Gallium3D-aktiverad bör den här metoden fungera.
  • Gallium3D är ett API som gör det lättare att utveckla drivrutiner för grafikkort genom att tillhandahålla en uppsättning standardbibliotek och gränssnitt. AMD och NVIDIA-drivrutiner med öppen källkod bygger på Gallium3D.

    För att visa FPS-räknare i inbyggda Linux-spel, använd kommandot nedan efter att du har ersatt / path / to / executable med din egen spårbar körsökväg:

    GALLIUM_HUD = "enkel, fps" / sökväg / till / körbar

    För att visa FPS-räknare i Windows-spel som körs på Linux via Wine använder du kommandot nedan efter att du har ersatt / path / to / executable med din egen spårbara körsökväg.

    GALLIUM_HUD = "enkel, fps" vin / sökväg / till / körbar

    Om du använder ett vinprefix skulle kommandot vara (ersätt / sökväg / till / vin / prefix och / sökväg / till / körbar):

    GALLIUM_HUD = "enkel, fps" WINEPREFIX = / sökväg / till / vin / prefix vin / sökväg / till / körbar

    I skärmdumpen ovan använder jag en anpassad GALLIUM_HUD-variabel som också visar GPU- och CPU-temperaturer. Detta anpassade kommando skiljer sig åt för olika PC-konfigurationer. För att läsa mer om alla anpassningsalternativ, kör kommandon:

    sudo apt installera mesa-utils
    GALLIUM_HUD = hjälp glxgears

    Bara för referens, här är det anpassade kommandot jag använde i skärmdumparna ovan:

    GALLIUM_HUD = "enkel, fps; sensorer_temp_cu-amdgpu-pci-1c00.temp1;
    sensors_temp_cu-k10temp-pci-00c3.Tdie "/ sökväg / till / körbar

    Metod 4 (Mesa Vulkan Overlay)

    Kompatibilitetsanmärkningar:

    Mesa Vulkan-overlay är ett nytt Vulkan-lager som läggs till i de senaste versionerna av Mesa. Den visar olika information om den körande applikationen med hjälp av ett överlägg.

    För att visa FPS-räknare i inbyggda Linux-spel använder du kommandot nedan efter att du har ersatt / path / to / executable med din egen spårbara körsökväg:

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG = position = uppe till vänster / sökväg / till / körbar

    För att visa FPS-räknare i Windows-spel som körs på Linux via Wine och DXVK, använd kommandot nedan efter att du har ersatt / path / to / executable med din egen körbara sökväg:

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG = position = övre vänstra vin / väg / till / körbar

    Om du använder ett vinprefix skulle kommandot vara (ersätt / sökväg / till / vin / prefix och / sökväg / till / körbar):

    VK_INSTANCE_LAYERS = VK_LAYER_MESA_overlay
    VK_LAYER_MESA_OVERLAY_CONFIG = position = uppe till vänster
    WINEPREFIX = / sökväg / till / vin / prefix vin / sökväg / till / körbar

    Metod 5 (DXVK HUD)

    Kompatibilitetsanmärkningar:

    DXVK tillhandahåller ett Vulkan-baserat översättningsskikt för D3D10 och D3D11 som tillåter användare att spela Direct3D 10/11-spel på Linux. D9VK använder DXVK-backend för att ge en ytterligare Direct3D9-implementering som kan användas för att spela spel som bygger på D3D9.

    För att visa FPS-räknare i DXVK-spel som körs på Linux via Wine använder du kommandot nedan efter att du har ersatt / path / to / executable med din egen spårbara körbar sökväg:

    DXVK_HUD = fps vin / sökväg / till / körbar

    Om du använder ett vinprefix skulle kommandot vara (ersätt / sökväg / till / vin / prefix och / sökväg / till / körbar):

    DXVK_HUD = fps WINEPREFIX = / sökväg / till / vin / prefix vin / sökväg / till / körbar

    Detta markerar slutet på detta inlägg. Avslutningsvis skulle jag nämna en liten detalj som utelämnats ovanifrån. Alla icke-ångmetoder som förklaras ovan fungerar också för Steam-spel. Du måste ersätta “/ path / to / executable” eller “wine / path / to / executable” eller “WINEPREFIX = / path / to / wine / prefix wine / path / to / executable” med “% command%” i samma kommandon som används ovan. Lägg bara till hela kommandot för att starta alternativ i spelegenskaper i Steam-appen, som visas på skärmdumpen nedan:

    Bästa kommandoradsspel för Linux
    Kommandoraden är inte bara din största allierade när du använder Linux, det kan också vara källan till underhållning eftersom du kan använda den för a...
    Bästa Gamepad Mapping Apps för Linux
    Om du gillar att spela spel på Linux med en gamepad istället för ett typiskt tangentbord och musinmatningssystem, finns det några användbara appar för...
    Användbara verktyg för Linux-spelare
    Om du gillar att spela spel på Linux är chansen att du kan ha använt appar och verktyg som Wine, Lutris och OBS Studio för att förbättra spelupplevels...