Mit dem Wachstum von Linux-Spielen begannen viele Benutzer nach geeigneten Wegen zu suchen, um den "Frames per Second" (FPS)-Zähler als Overlay für laufende Linux-Spiele anzuzeigen. Ein FPS-Zähler hilft bei der Optimierung der Leistung von laufenden Spielen sowie beim Benchmarking der Gesamtfähigkeit eines PCs, Spiele mit verschiedenen Auflösungen zu spielen.
Leider gibt es keine einheitliche Möglichkeit, den FPS-Zähler in allen Linux-Spielen anzuzeigen, der unabhängig von den zugrunde liegenden Technologien ist, auf denen ein Spiel ausgeführt wird. Verschiedene Renderer und APIs haben unterschiedliche Möglichkeiten, den FPS-Zähler anzuzeigen. In dieser Anleitung werden verschiedene Methoden erläutert, mit denen ein FPS-Zähler in Linux-Spielen angezeigt werden kann.
Methode 1 (Dampf)
Kompatibilitätshinweise:
- Funktioniert mit OpenGL- und Vulkan-Spielen.
- Funktioniert mit nativen Spielen und Proton Proton ist eine in Steam enthaltene Kompatibilitätsebene zum Ausführen von Windows-Spielen unter Linux. Es basiert auf Wine-, DXVK- und D9VK-Open-Source-Projekten mit zusätzlichen Patches und neuen Funktionen, die von Valve/Wine-Entwicklern hinzugefügt wurden.
- Funktioniert mit Spielen, die bei Steam gekauft wurden, oder Spielen von Drittanbietern, die vom Benutzer zu Steam hinzugefügt wurden.
- Getestete Funktion mit integrierten Intel- und AMD-Grafikkarten.
- Ungetestet mit NVIDIA-Karten, da ich keine NVIDIA-Karte besitze. Aber laut Steam-Community-Foren funktioniert der integrierte FPS-Zähler auf NVIDIA-Karten gut.
Steam für Linux enthält einen integrierten FPS-Zähler, der in den Einstellungen umgeschaltet werden kann. Dies ist wahrscheinlich eine der am besten kompatiblen Optionen, die mit den meisten Linux-Spielen funktioniert. Ich hatte jedoch einige Probleme mit Spielen der Unity-Engine, die den integrierten FPS-Zähler nicht anzeigten. Diese Option erfordert auch, dass Sie ein Steam-Konto und einen Steam-Client auf Ihrem System installiert haben.
Mit Steam können Sie sogar Spiele, die nicht bei Steam gekauft wurden, zur Spielebibliothek hinzufügen und der integrierte FPS-Zähler funktioniert auch in diesen Spielen games. Um ein Nicht-Steam-Spiel hinzuzufügen, klicken Sie auf „Spiele“ und dann auf „Ein Nicht-Steam-Spiel zu meiner Bibliothek hinzufügen“, wie im Screenshot unten gezeigt:
Navigieren Sie zum Speicherort Ihrer Spieldateien und schalten Sie dann die Option "Alle Dateien" unten um.
Wählen Sie die ausführbare Spieldatei aus und klicken Sie dann auf „AUSGEWÄHLTE PROGRAMME HINZUFÜGEN“, wie im Screenshot unten gezeigt:
Wenn Sie ein reines Windows-Spiel in der Proton-Kompatibilitätsebene von Steam ausführen möchten, müssen Sie eine zusätzliche Option in den Spieleigenschaften aktivieren.
Ich habe die ausführbare SuperTuxKart-Datei in der Steam-Bibliothek hinzugefügt, und der FPS-Zähler funktioniert auch hier gut. Beachten Sie, dass Spiele von Drittanbietern, die der Steam-Bibliothek hinzugefügt werden, keine Leerzeichen in ihrem Dateipfad enthalten dürfen.
Methode 2 (LibGL)
Kompatibilitätshinweise:
- Funktioniert nur mit OpenGL-Spielen.
- Funktioniert mit nativen Spielen und Wine-Spielen.
- Getestete Funktion mit integrierten Intel- und AMD-Grafikkarten mit Open-Source-Treibern.
- Ungetestet mit NVIDIA-Karten, da ich keine NVIDIA-Karte besitze. Es sollte jedoch mit NVIDIA-GPUs mit Open-Source-Treibern funktionieren.
LibGL ist eine Mesa-Bibliothek, die OpenGL-APIs für Apps und Spiele bereitstellt und standardmäßig in fast allen Linux-Distributionen enthalten ist. Mit dieser Bibliothek und einem anderen Paket, das ein HUD auf dem sichtbaren Display erstellt, zeigen wir einen FPS-Zähler in Linux-Spielen. Führen Sie den folgenden Befehl aus, um das erforderliche Paket zu installieren:
sudo apt installiere xosd-binUm den FPS-Zähler in nativen Linux-Spielen anzuzeigen, verwenden Sie den folgenden Befehl, nachdem Sie /path/to/executable durch Ihren eigenen ausführbaren Spielpfad ersetzt haben. Hier erfahren Sie mehr über alle osd-cat-Optionen.
LIBGL_SHOW_FPS=1 /Pfad/zu/ausführbare Datei 2>&1 |tee /dev/stderr | sed -u -n -e '/^libGL: FPS = /s/.* \([^ ]*\)= /\1/;p' |
osd_cat --lines=1 --color=yellow --outline=1 --pos=top --align=left
Um den FPS-Zähler in Windows-Spielen anzuzeigen, die unter Linux über Wine ausgeführt werden, verwenden Sie den folgenden Befehl, nachdem Sie /path/to/executable durch Ihren eigenen ausführbaren Spielpfad ersetzt haben.
WINEDEBUG=fps wine /path/to/executable 2>&1 | tee /dev/stderr |sed -u -n -e '/trace/ s/.*ungefähr //p' | osd_cat --lines=1 --color=gelb
--Umriss=1 --pos=top --align=center
Wenn Sie ein Wine-Präfix verwenden, lautet der Befehl (ersetzen Sie /path/to/wine/prefix und /path/to/executable):
WINEDEBUG=fps WINEPREFIX=/Pfad/zu/Wein/Präfix Wein/Pfad/zu/ausführbare Datei 2>&1 | tee /dev/stderr | sed -u -n -e '/trace/ s/
.*ungefähr //p' | osd_cat --lines=1 --color=yellow --outline=1 --pos=top
--ausrichten=zentrieren
Diese Methode hat eine kleine Einschränkung. Während Sie das osd-cat HUD anpassen können, bleibt es an einer festen Position im Anzeigebereich, ohne die Geometrie des Spielfensters zu berücksichtigen. Im obigen Screenshot wird der FPS-Zähler über dem Spielfenster angezeigt, nicht darin. Spiele im Vollbildmodus sind davon nicht betroffen.
Methode 3 (Gallium3D)
Gallium3D ist eine API, die die Entwicklung von Treibern für Grafikkarten erleichtert, indem sie eine Reihe von Standardbibliotheken und Schnittstellen bereitstellt. AMD- und NVIDIA-Open-Source-Treiber basieren auf Gallium3D. Um den FPS-Zähler in nativen Linux-Spielen anzuzeigen, verwenden Sie den folgenden Befehl, nachdem Sie /path/to/executable durch Ihren eigenen ausführbaren Spielpfad ersetzt haben: Um den FPS-Zähler in Windows-Spielen anzuzeigen, die unter Linux über Wine laufen, verwenden Sie den folgenden Befehl, nachdem Sie /path/to/executable durch Ihren eigenen ausführbaren Spielpfad ersetzt haben. Wenn Sie ein Wine-Präfix verwenden, lautet der Befehl (ersetzen Sie /path/to/wine/prefix und /path/to/executable): Im obigen Screenshot verwende ich eine angepasste GALLIUM_HUD-Variable, die auch die GPU- und CPU-Temperaturen anzeigt. Dieser benutzerdefinierte Befehl unterscheidet sich für verschiedene PC-Konfigurationen. Um mehr über alle Anpassungsoptionen zu erfahren, führen Sie Befehle aus: Nur als Referenz, hier ist der benutzerdefinierte Befehl, den ich in den obigen Screenshots verwendet habe: Kompatibilitätshinweise: Mesa Vulkan-Overlay ist eine neue Vulkan-Ebene, die den letzten Builds von Mesa . hinzugefügt wurde. Es zeigt verschiedene Informationen über die laufende Anwendung mithilfe eines Overlays an. Um den FPS-Zähler in nativen Linux-Spielen anzuzeigen, verwenden Sie den folgenden Befehl, nachdem Sie /path/to/executable durch Ihren eigenen ausführbaren Spielpfad ersetzt haben: Um den FPS-Zähler in Windows-Spielen anzuzeigen, die unter Linux über Wine und DXVK ausgeführt werden, verwenden Sie den folgenden Befehl, nachdem Sie /path/to/executable durch Ihren eigenen ausführbaren Spielpfad ersetzt haben: Wenn Sie ein Wine-Präfix verwenden, lautet der Befehl (ersetzen Sie /path/to/wine/prefix und /path/to/executable): Kompatibilitätshinweise: DXVK bietet eine Vulkan-basierte Übersetzungsschicht für D3D10 und D3D11, mit der Benutzer Direct3D 10/11-Spiele unter Linux spielen können. D9VK verwendet das DXVK-Backend, um eine zusätzliche Direct3D9-Implementierung bereitzustellen, die zum Spielen von Spielen verwendet werden kann, die auf D3D9 basieren. Um den FPS-Zähler in DXVK-Spielen anzuzeigen, die unter Linux über Wine ausgeführt werden, verwenden Sie den folgenden Befehl, nachdem Sie /path/to/executable durch Ihren eigenen ausführbaren Spielpfad ersetzt haben: Wenn Sie ein Wine-Präfix verwenden, lautet der Befehl (ersetzen Sie /path/to/wine/prefix und /path/to/executable): Dies markiert das Ende dieses Beitrags. Abschließend möchte ich noch ein kleines Detail erwähnen, das oben weggelassen wurde. Alle oben erläuterten Nicht-Steam-Methoden funktionieren auch für Steam-Spiele. Sie müssen „/path/to/executable“ oder „wine /path/to/executable“ oder „WINEPREFIX=/path/to/wine/prefix wine /path/to/executable“ durch „%command%“ ersetzen dieselben Befehle wie oben verwendet. Fügen Sie einfach den vollständigen Befehl hinzu, um Optionen in den Spieleigenschaften in der Steam-App zu starten, wie im folgenden Screenshot gezeigt:
GALLIUM_HUD=Hilfe für glxgears
Sensoren_temp_cu-k10temp-pci-00c3.Tdie" /Pfad/zu/ausführbare Datei Methode 4 (Mesa Vulkan Overlay)
VK_LAYER_MESA_OVERLAY_CONFIG=Position=oben-links
WINEPREFIX=/Pfad/zu/Wein/Präfix Wein /Pfad/zu/ausführbare Datei Methode 5 (DXVK-HUD)