Med veksten av Linux-spill begynte mange brukere å lete etter riktige måter å vise "frames per second" (FPS) -teller som et overlegg på å kjøre Linux-spill. En FPS-teller hjelper til med å tilpasse ytelsen til løpende spill så vel som å måle en PCs generelle evne til å spille spill i forskjellige oppløsninger.
Dessverre er det ingen eneste enhetlige måte å vise FPS-teller i alle Linux-spill som er uavhengig av underliggende teknologier et spill kjører på. Ulike renderere og API-er har forskjellige måter å vise FPS-teller på. Denne guiden vil forklare ulike metoder som kan brukes til å vise en FPS-teller i Linux-spill.
Metode 1 (damp)
Merknader om kompatibilitet:
- Fungerer med OpenGL og Vulkan-spill.
- Fungerer med innfødte spill og Proton Proton er et kompatibilitetslag som er inkludert i Steam for å kjøre Windows-spill i Linux. Den er basert på Wine, DXVK og D9VK open source-prosjekter med tilleggsoppdateringer og nye funksjoner lagt til av Valve / Wine-utviklere.
- Fungerer med spill kjøpt på Steam eller spill fra tredjeparter lagt til Steam av brukeren.
- Testet å jobbe med integrerte Intel- og AMD-grafikkort.
- Uprøvd med NVIDIA-kort da jeg ikke eier et NVIDIA-kort. Men ifølge Steam-fellesskapsfora fungerer innebygd fps-teller bra på NVIDIA-kort.
Steam for Linux inkluderer en innebygd FPS-teller som kan byttes fra innstillinger. Dette er sannsynligvis et av de mest kompatible alternativene som fungerer med et flertall Linux-spill. Imidlertid hadde jeg noen problemer med at Unity-motorspill ikke viste den innebygde FPS-telleren. Dette alternativet krever også at du har en Steam-konto og Steam-klient installert på systemet ditt.
Steam lar deg til og med legge til spill som ikke er kjøpt fra Steam til spillbiblioteket, og den innebygde FPS-telleren fungerer også i disse spillene. For å legge til et ikke-steam-spill, klikk på "Games" og klikk deretter på "Add a Non-Steam Game to My Library", som vist på skjermbildet nedenfor:
Bla til plasseringen til spillfilene dine, og bytt deretter alternativet "Alle filer" nederst.
Velg spillet som kan kjøres, og klikk deretter på “ADD SELECTED PROGRAMS” som vist på skjermbildet nedenfor:
Hvis du vil kjøre et bare Windows-spill i Steams Proton-kompatibilitetslag, må du aktivere et ekstra alternativ i spillegenskaper.
Jeg har lagt til SuperTuxKart kjørbar i steam Library, og FPS-teller fungerer også bra her. Vær oppmerksom på at tredjepartsspill som legges til Steam-biblioteket ikke skal ha mellomrom i filens plasseringsbane.
Metode 2 (LibGL)
Merknader om kompatibilitet:
- Fungerer bare med OpenGL-spill.
- Fungerer med innfødte spill og vinspill.
- Testet å arbeide med integrerte Intel- og AMD-grafikkort med drivere med åpen kildekode.
- Uprøvd med NVIDIA-kort da jeg ikke eier et NVIDIA-kort. Det skal imidlertid fungere med NVIDIA GPUer med drivere med åpen kildekode.
LibGL er et Mesa-bibliotek som eksponerer OpenGL API-er for apper og spill, og det er inkludert i nesten alle Linux-distribusjoner som standard. Ved å bruke dette biblioteket og en annen pakke som oppretter en HUD på synlig skjerm, vil vi vise en FPS-teller i Linux-spill. Kjør følgende kommando for å installere den nødvendige pakken:
sudo apt installere xosd-binFor å vise FPS-teller i native Linux-spill, bruk kommandoen nedenfor etter å ha erstattet / path / to / executable med din egen game executable path. Du kan vite mer om alle osd-cat-alternativer herfra.
LIBGL_SHOW_FPS = 1 / bane / til / kjørbar 2> & 1 |tee / dev / stderr | sed -u -n -e '/ ^ libGL: FPS = / s /.* \ ([^] * \) = / \ 1 /; p '|
osd_cat --lines = 1 --farge = gul - outline = 1 --pos = topp --juster = venstre
For å vise FPS-teller i Windows-spill som kjører på Linux via Wine, bruker du kommandoen nedenfor etter å ha erstattet / path / to / executable med din egen game executable path.
WINEDEBUG = fps vin / sti / til / kjørbar 2> & 1 | tee / dev / stderr |sed -u -n -e '/ spor / s /.* ca. // p '| osd_cat --lines = 1 --farge = gul
--disposisjon = 1 --pos = topp --juster = sentrum
Hvis du bruker et vinprefiks, vil kommandoen være (erstatt / sti / til / vin / prefiks og / sti / til / kjørbar):
WINEDEBUG = fps WINEPREFIX = / sti / til / vin / prefiks vin/ sti / til / kjørbar 2> & 1 | tee / dev / stderr | sed -u -n -e '/ spor / s /
.* ca. // p '| osd_cat --lines = 1 --farge = gul - outline = 1 --pos = topp
--align = center
Denne metoden har en liten begrensning. Mens du kan tilpasse osd-cat HUD, holder den seg på en fast posisjon på skjermområdet uten å ta i betraktning geometrien til spillvinduet. På skjermbildet ovenfor vises FPS-teller over spillvinduet, ikke inne i det. Spill som kjører i fullskjerm påvirkes ikke av dette.
Metode 3 (Gallium3D)
Gallium3D er et API som gjør det lettere å utvikle drivere for grafikkort ved å tilby et sett med standardbiblioteker og grensesnitt. AMD og NVIDIA open source-drivere er bygget på Gallium3D. For å vise FPS-teller i innfødte Linux-spill, bruk kommandoen nedenfor etter å ha erstattet / path / to / executable med din egen game executable path: For å vise FPS-teller i Windows-spill som kjører på Linux via Wine, bruk kommandoen nedenfor etter å ha erstattet / path / to / executable med din egen game executable path. Hvis du bruker et vinprefiks, vil kommandoen være (erstatt / sti / til / vin / prefiks og / sti / til / kjørbar): I skjermbildet ovenfor bruker jeg en tilpasset GALLIUM_HUD-variabel som også viser GPU- og CPU-temperaturer. Denne egendefinerte kommandoen er forskjellig for forskjellige PC-konfigurasjoner. For å lese mer om alle tilpasningsalternativer, kjør kommandoer: Bare for referanse, her er den tilpassede kommandoen jeg brukte i skjermbildene ovenfor: Merknader om kompatibilitet: Mesa Vulkan-overlegg er et nytt Vulkan-lag som er lagt til i nyere versjoner av Mesa. Den viser forskjellig informasjon om programmet som kjører ved hjelp av et overlegg. For å vise FPS-teller i innfødte Linux-spill, bruk kommandoen nedenfor etter å ha erstattet / path / to / executable med din egen game executable path: For å vise FPS-teller i Windows-spill som kjører på Linux gjennom Wine og DXVK, bruker du kommandoen nedenfor etter å ha erstattet / path / to / executable med din egen game executable path: Hvis du bruker et vinprefiks, vil kommandoen være (erstatt / sti / til / vin / prefiks og / sti / til / kjørbar): Merknader om kompatibilitet: DXVK gir et Vulkan-basert oversettelseslag for D3D10 og D3D11 som tillater brukere å spille Direct3D 10/11 spill på Linux. D9VK bruker DXVK-backend for å gi en ekstra Direct3D9-implementering som kan brukes til å spille spill bygget på D3D9. For å vise FPS-teller i DXVK-spill som kjører på Linux gjennom Wine, bruk kommandoen nedenfor etter å ha erstattet / path / to / executable med din egen game executable path: Hvis du bruker et vinprefiks, vil kommandoen være (erstatt / sti / til / vin / prefiks og / sti / til / kjørbar): Dette markerer slutten på dette innlegget. For å avslutte vil jeg nevne en liten detalj utelatt ovenfra. Alle ikke-dampmetodene som er forklart ovenfor, vil også fungere for Steam-spill. Du må erstatte “/ path / to / executable” eller “wine / path / to / executable” eller “WINEPREFIX = / path / to / wine / prefix wine / path / to / executable” med “% command%” i de samme kommandoene som er brukt ovenfor. Bare legg til hele kommandoen for å starte alternativer i spillegenskaper i Steam-appen, som vist på skjermbildet nedenfor:
GALLIUM_HUD = hjelp glxgears
sensors_temp_cu-k10temp-pci-00c3.Tdie "/ sti / til / kjørbar Metode 4 (Mesa Vulkan Overlay)
VK_LAYER_MESA_OVERLAY_CONFIG = posisjon = øverst til venstre
WINEPREFIX = / sti / til / vin / prefiks vin / sti / til / kjørbar Metode 5 (DXVK HUD)