Med tillväxten av Linux -spel började många användare leta efter rätt sätt att visa bildrutor per sekund (FPS) -räknare som ett överlägg på att köra Linux -spel. En FPS -räknare hjälper till med att finjustera prestanda för löpande spel och att jämföra 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 kommer att förklara olika metoder som kan användas för att visa en FPS -räknare i Linux -spel.
Kompatibilitetsanteckningar:
- Fungerar med OpenGL- och Vulkan -spel.
- Fungerar med inhemska spel och Proton Proton är ett kompatibilitetslager som ingår i Steam för att köra Windows -spel i Linux. Det baseras på Vin , DXVK och D9VK öppen källkodsprojekt med ytterligare patchar och nya funktioner tillagda av Valve/Wine -utvecklare.
- Fungerar med spel köpta på Steam eller tredjepartsspel som lagts till Steam av användaren.
- Testad att arbeta med integrerade Intel- och AMD -grafikkort.
- Otestad med NVIDIA -kort eftersom jag inte äger ett NVIDIA -kort. Men enligt Steam-communityforum fungerar den inbyggda fps-räknaren bra på NVIDIA-kort.
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 de flesta Linux -spel. Men jag hade några problem med Unity-motorspel som inte visade den inbyggda FPS-räknaren. Det här alternativet kräver också att du har ett Steam -konto och en Steam -klient installerad på ditt system.
Steam tillåter dig till och med att 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 icke-steam-spel, klicka på Spel och klicka sedan på Lägg till ett icke-Steam-spel i mitt bibliotek, som visas på skärmdumpen nedan:
Bläddra till platsen för dina spelfiler och växla sedan alternativet Alla filer längst ner.
Välj spelet körbart och klicka sedan på LÄGG TILL VALDA PROGRAM som visas på skärmdumpen nedan:
Om du vill köra ett Windows -spel bara i Steams Proton -kompatibilitetslager måste du aktivera ytterligare ett alternativ i spelegenskaper.
Jag har lagt till SuperTuxKart körbar i steam Library, och FPS -räknaren fungerar bra här också. Observera att spel från tredje part som läggs till i Steam -biblioteket inte får ha några mellanslag i filens sökväg.
Metod 2 (LibGL)
Kompatibilitetsanteckningar:
- Fungerar endast med OpenGL -spel.
- Fungerar med inhemska spel och vinspel.
- Testade att arbeta med integrerade Intel- och AMD -grafikkort med drivrutiner med öppen källkod.
- Otestad med NVIDIA -kort eftersom jag inte äger ett NVIDIA -kort. Det bör dock fungera med NVIDIA -GPU: er med drivrutiner med öppen källkod.
LibGL är ett Mesa -bibliotek som exponerar OpenGL -API: er för appar och spel och det ingår i nästan alla Linux -distributioner som standard. Med hjälp av detta bibliotek och ett annat paket som skapar en HUD på synlig display, kommer vi att visa en FPS -räknare i Linux -spel. Kör följande kommando för att installera det nödvändiga paketet:
sudobenägenInstalleraxosd-binFör att visa FPS -räknare i inbyggda Linux -spel, använd kommandot nedan efter att du har ersatt/sökväg/till/körbar med din egen körbara sökväg. Du kan veta mer om alla osd-cat-alternativ från här .
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 --färg = gul --linje = 1 --pos = överst --align = vänster
För att visa FPS -räknare i Windows -spel som körs på Linux via Wine, använd kommandot nedan efter att du har ersatt/sökväg/till/körbar med din egen körbara sökväg.
WINEDEBUG = fps wine/path/to/executable 2> & 1 | tee /dev /stderr |sed -u -n -e '/trace/s /.* approx // p' | osd_cat --lines = 1 --färg = gul
--kontur = 1 --pos = topp --linj = mitt
Om du använder ett vinprefix är kommandot (ersätt/sökväg/till/vin/prefix och/sökväg/till/körbart):
WINEDEBUG = fps WINEPREFIX =/path/to/wine/prefix wine/sökväg/till/körbar 2> & 1 | tee /dev /stderr | sed -u -n -e '/ trace/ s/
.*ungefär // p '| osd_cat --lines = 1 --färg = gul --linje = 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. På skärmdumpen ovan visas FPS -räknaren ovanför spelfönstret, inte inuti det. Spel som körs i helskärm påverkas inte av detta.
Metod 3 (Gallium3D)
Gallium3D är ett API som gör det enklare 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/sökväg/till/körbar med din egen körbara sökväg för spel: För att visa FPS -räknare i Windows -spel som körs på Linux via Wine, använd kommandot nedan efter att du har ersatt/sökväg/till/körbar med din egen körbara sökväg. Om du använder ett vinprefix är kommandot (ersätt/sökväg/till/vin/prefix och/sökväg/till/körbart): I skärmdumpen ovan använder jag en anpassad GALLIUM_HUD -variabel som också visar GPU- och CPU -temperaturer. Detta anpassade kommando är annorlunda för olika PC -konfigurationer. Om du vill läsa mer om alla anpassningsalternativ kör du kommandon: Bara för referens, här är det anpassade kommandot jag använde i skärmdumparna ovan: Kompatibilitetsanteckningar: Vulkan överläggsbord är ett nytt Vulkan -lager som läggs till de senaste byggnaderna av Mesa. Den visar olika information om det körda programmet med hjälp av ett överlägg. För att visa FPS -räknare i inbyggda Linux -spel, använd kommandot nedan efter att du har ersatt/sökväg/till/körbar med din egen körbara sökväg för spel: 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 bytt ut/sökväg/till/körbar med din egen körbara sökväg: Om du använder ett vinprefix är kommandot (ersätt/sökväg/till/vin/prefix och/sökväg/till/körbart): Kompatibilitetsanteckningar: DXVK tillhandahåller ett Vulkan-baserat översättningsskikt för D3D10 och D3D11 så att användare kan spela Direct3D 10/11-spel på Linux. D9VK använder DXVK -backend för att tillhandahålla 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änd kommandot nedan efter att du har bytt ut/sökväg/till/körbar med din egen körbara sökväg: Om du använder ett vinprefix är kommandot (ersätt/sökväg/till/vin/prefix och/sökväg/till/körbart): Detta markerar slutet på detta inlägg. Avslutningsvis vill jag nämna en liten detalj utelämnad 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:
GALLIUM_HUD=hjälpglxgears
sensors_temp_cu-k10temp-pci-00c3.Tdie ' /väg/till/körbar Metod 4 (Vulkan -överlagringstabell)
VK_LAYER_MESA_OVERLAY_CONFIG = position = uppe till vänster
WINEPREFIX =/path/to/wine/prefix wine/path/to/executable Metod 5 (DXVK HUD)