So zeigen Sie FPS -Zähler in Linux -Spielen

So zeigen Sie FPS -Zähler in Linux -Spielen
Linux Gaming erhielt einen großen Schub, als Valve 2012 Linux -Unterstützung für Steam Client und seine Spiele bekannt gab. Seitdem haben sich viele AAA- und Indie -Spiele nach Linux und der Anzahl der Benutzer, die unter Linux spielen.

Mit dem Wachstum von Linux Gaming suchten viele Benutzer nach geeigneten Möglichkeiten, um „Frames pro Sekunde“ (FPS) als Overlay für das Ausführen von Linux -Spielen anzuzeigen. Ein FPS -Zähler hilft bei der Optimierung der Leistung von Spielen sowie beim Benchmarking der Gesamtfähigkeit eines PCs, Spiele bei verschiedenen Auflösungen zu spielen.

Leider gibt es in allen Linux -Spielen keinen einzigen einheitlichen Weg, um den FPS -Zähler anzuzeigen, der unabhängig von zugrunde liegenden Technologien ist, auf denen ein Spiel läuft. Unterschiedliche Renderer und APIs haben unterschiedliche Möglichkeiten, FPS -Zähler anzuzeigen. In diesem Handbuch werden verschiedene Methoden erläutert, mit denen ein FPS -Zähler in Linux -Spielen angezeigt werden kann.

Methode 1 (Dampf)

Kompatibilitätsnotizen:

  • Arbeitet mit OpenGL- und Vulkan -Spielen.
  • Arbeitet mit nativen Spielen und Protonenspielen. Proton ist eine Kompatibilitätsebene, die in Steam zum Ausführen von Windows -Spielen unter Linux enthalten ist. Es basiert auf Wein-, DXVK- und D9VK -Open -Source -Projekten mit zusätzlichen Patches und neuen Funktionen, die von Ventil-/Weinentwicklern hinzugefügt wurden.
  • Arbeitet mit Spielen, die auf Steam- oder Drittanbietern gekauft werden, die vom Benutzer zu Steam hinzugefügt wurden.
  • Getestet Arbeit mit integrierten Intel- und AMD -Grafikkarten.
  • Ungetestet mit Nvidia -Karten, da ich keine Nvidia -Karte besitze. Laut Steam Community-Foren funktioniert der eingebaute FPS-Schalter jedoch auf NVIDIA-Karten einwandfrei.

Dampf für Linux enthält einen integrierten FPS-Zähler, der aus Einstellungen umgeschaltet werden kann. Dies ist wahrscheinlich eine der kompatiblen Optionen, die mit einer Mehrheit der Linux -Spiele funktioniert. Ich hatte jedoch einige Probleme mit Unity Engine-Spielen, die den eingebauten FPS-Zähler nicht anzeigen. Diese Option erfordert außerdem, dass Sie ein Steam -Konto und einen Steam -Client auf Ihrem System installiert haben.

Mit Steam können Sie sogar Spiele hinzufügen, die nicht von Steam in die Spielbibliothek gekauft wurden, und der integrierte FPS-Schalter funktioniert auch in diesen Spielen. Klicken Sie auf "Spiele", um ein Nicht-Steam-Spiel hinzuzufügen, und klicken Sie dann auf "My Library hinzufügen", wie im folgenden Screenshot gezeigt:

Suchen Sie zum Speicherort Ihrer Spieldateien und wechseln Sie unten "Alle Dateien" -Option.

Wählen Sie das ausführbare Spiel aus und klicken Sie dann auf "Ausgewählte Programme hinzufügen", wie im folgenden Screenshot gezeigt:

Wenn Sie ein Windows -Spiel in Steams Proton -Kompatibilitätsebene ausführen möchten, müssen Sie eine zusätzliche Option in Spieleigenschaften aktivieren.

Ich habe SuperTuxKart -ausführbare Datei in der Steam Library hinzugefügt, und auch hier funktioniert der FPS -Schalter gut. Beachten.

Methode 2 (libgl)

Kompatibilitätsnotizen:

  • Funktioniert nur mit OpenGL -Spielen.
  • Arbeitet mit einheimischen Spielen und Weinspielen.
  • Getestet Arbeit 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 zusammenarbeiten.

Libgl ist eine MESA -Bibliothek, die OpenGL -APIs Apps und Spielen aussetzt und standardmäßig in fast allen Linux -Verteilungen enthalten ist. Mit dieser Bibliothek und einem anderen Paket, das ein HUD auf sichtbarem 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 installieren xosd-bin

Um den FPS -Zähler in nativen Linux -Spielen anzuzeigen. Von hier aus können Sie mehr über alle OSD-CAT-Optionen erfahren.

Libgl_show_fps = 1/path/to/ausführbar 2> & 1 | tee /dev /stderr | sed -u -n -e '/^libgl: fps =/s/.* \ ([^]* \) = /\ 1 /; p '| osd_cat -lines = 1 -color = gelb -outline = 1 - -pos = top -Align = links

Verwenden Sie den folgenden Befehl nach dem Austausch/Pfad/an/ausführbar mit Ihrem eigenen Spiel ausführbarer Pfad, um den FPS -Zähler in Windows -Spielen zu zeigen, die auf Linux ausgeführt werden.

WineDebug = FPS Wein/Pfad/an/ausführbare Datei 2> & 1 | tee /dev /stderr | sed -u -n -e '/ trace/ s/.*ca. // p '| OSD_CAT - -lines = 1 -Color = gelb - -outline = 1 - -pos = top -Align = center

Wenn Sie ein Weinpräfix verwenden, wäre der Befehl (ersetzen/Pfad/an/wine/prefix und/path/to/ausführbar):

WineDebug = FPS wineprefix =/path/to/wine/prefix wine/path/to/ausführbar 2> & 1 | tee /dev /stderr | sed -u -n -e '/ trace/ s/.*ca. // p '| OSD_CAT - -lines = 1 -Color = gelb - -outline = 1 - -pos = top -Align = center

Diese Methode hat eine kleine Einschränkung. Während Sie das OSD-CAT-HUD anpassen können, bleibt es in 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)

Kompatibilitätsnotizen:

  • Funktioniert nur mit OpenGL -Spielen.
  • Arbeitet mit einheimischen Spielen und Weinspielen.
  • Getestet arbeiten mit AMD -Grafikkarten mit Open Source -Treibern.
  • Gallium3D -Unterstützung für Intel ist noch nicht abgeschlossen, also funktioniert es also noch nicht.
  • Ungetestet mit Nvidia -Karten, da ich keine Nvidia -Karte besitze. Da der Nvidia Open Source -Treiber Gallium3D aktiviert ist, sollte diese Methode funktionieren.

Gallium3d ist eine API, die es einfacher macht, Treiber für Grafikkarten zu entwickeln, indem eine Reihe von Standardbibliotheken und Schnittstellen bereitgestellt werden. Open Source -Treiber von AMD und Nvidia sind auf Gallium3d gebaut.

Um den FPS -Zähler in nativen Linux -Spielen anzuzeigen, verwenden Sie den folgenden Befehl, nachdem Sie mit Ihrem eigenen ausführbaren Spielpfad ersetzt/path/to/ausführbar sein können:

Gallium_hud = "einfache, fps"/path/to/ausführbare Datei

Verwenden Sie den folgenden Befehl nach dem Austausch/Pfad/an/ausführbar mit Ihrem eigenen Spiel ausführbarer Pfad, um den FPS -Zähler in Windows -Spielen zu zeigen, die auf Linux ausgeführt werden.

Gallium_hud = "einfache, fps" Wein/Pfad/to/ausführbare Datei

Wenn Sie ein Weinpräfix verwenden, wäre der Befehl (ersetzen/Pfad/an/wine/prefix und/path/to/ausführbar):

Gallium_hud = "einfach, fps" wineprefix =/path/to/wine/prefix wine/path/to/ausführbar

Im obigen Screenshot verwende ich eine angepasste Gallium_HUD -Variable, die auch GPU- und CPU -Temperaturen zeigt. Dieser benutzerdefinierte Befehl unterscheidet sich für verschiedene PC -Konfigurationen. Um mehr über alle Anpassungsoptionen zu erfahren, führen Sie Befehle aus:

sudo apt installieren mesa-utils
Gallium_hud = hilf glxgears

Nur als Referenz, hier ist der benutzerdefinierte Befehl, den ich in den obigen Screenshots verwendet habe:

Gallium_hud = "einfach, fps; Sensors_temp_cu-amdgpu-pci-1c00.temp1; Sensors_temp_cu-k10Temp-pci-00c3.Tdie "/path/to/ausführbar Datei

Methode 4 (Mesa Vulkan Overlay)

Kompatibilitätsnotizen:

  • Arbeitet nur mit Vulkan -Spielen.
  • Arbeitet mit Ubuntu 19.Nur 10+ und andere Verteilungen mit der neuesten MESA mit Vulkan -Overlay -Schicht.
  • Arbeitet mit nativen Spielen und Steam -Proton -Spielen, die mit DXVK/D9VK -Unterstützung laufen.
  • Arbeitet mit Weinspielen mit DXVK/D9VK Libs, die läuft.
  • Arbeitsstatus für Wine's VKD3D unbekannt. Da dies eine Vulkan -Schicht ist, sollte sie mit irgendetwas funktionieren, solange Mesa mit vk_layer_mesa_overlay -Unterstützung erstellt wurde.
  • Getestet arbeiten mit AMD -Grafikkarten und integrierten Intel -Karten mit Open Source -Treibern.
  • Ungetestet mit Nvidia -Karten, da ich keine Nvidia -Karte besitze. Da dies eine Vulkan -Schicht ist, sollte sie mit irgendetwas funktionieren, solange Mesa mit vk_layer_mesa_overlay -Unterstützung erstellt wurde.

Mesa Vulkan Overlay ist eine neue Vulkan -Schicht, die den jüngsten Mesa -Builds hinzugefügt hat. 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 mit Ihrem eigenen ausführbaren Spielpfad ersetzt/path/to/ausführbar sein können:

Vk_instance_layers = vk_layer_mesa_overlay vk_layer_mesa_overlay_config = Position = top-linft/path/to/ausführbare Datei

Um den FPS -Zähler in Windows -Spielen zu zeigen, die über Wine und DXVK auf Linux ausgeführt werden, verwenden Sie den folgenden Befehl, nachdem Sie mit Ihrem eigenen ausführbaren Spielpfad ersetzt/path/to/ausführbar sein:

Vk_instance_layers = vk_layer_mesa_overlay vk_layer_mesa_overlay_config = Position = top-links Wein/Pfad/to/ausführbar

Wenn Sie ein Weinpräfix verwenden, wäre der Befehl (ersetzen/Pfad/an/wine/prefix und/path/to/ausführbar):

Vk_instance_layers = vk_layer_mesa_overlay vk_layer_mesa_overlay_config = Position = top-links woneprefix =/path/to/wine/prefix wine/path/to/ausführbar

Methode 5 (DXVK HUD)

Kompatibilitätsnotizen:

  • Arbeitet nur mit Vulkan -Spielen, die in Wein und Proton mit DXVK/D9VK -Libs laufen.
  • Getestet arbeiten mit AMD und integrierten Intel -Grafikkarten mit Open Source -Treibern.
  • Ungetestet mit Nvidia -Karten, da ich keine Nvidia -Karte besitze. Quellcode hat sich verpflichtet, die NVIDIA -Unterstützung erwähnen, daher sollte diese Methode funktionieren.

DXVK bietet eine Vulkan-basierte Übersetzungsschicht für D3D10 und D3D11, mit der Benutzer Direct3D 10/11-Spiele unter Linux abspielen können. D9VK verwendet das DXVK -Backend, um eine zusätzliche DIRECT3D9 -Implementierung bereitzustellen, mit der Spiele gespielt werden können, die auf D3D9 basieren.

Um den FPS -Zähler in DXVK -Spielen zu zeigen, die über Wine auf Linux ausgeführt werden, verwenden Sie den folgenden Befehl, nachdem Sie mit Ihrem eigenen ausführbaren Spielpfad ersetzt/path/to/ausführbaren Datei ersetzt werden:

Dxvk_hud = fps wine/path/to/ausführbarer Datei

Wenn Sie ein Weinpräfix verwenden, wäre der Befehl (ersetzen/Pfad/an/wine/prefix und/path/to/ausführbar):

Dxvk_hud = fps wineprefix =/path/to/wine/prefix wine/path/to/ausführbar

Dies markiert das Ende dieses Beitrags. Abschließend würde ich ein kleines Detail erwähnen, das oben weggelassen wurde. Alle oben erläuterten Nicht-Steammethoden funktionieren auch für Steam-Spiele. Sie müssen "/path/to/ausführbare Datei" oder "Wein/Pfad/an/ausführbar" oder "winePrefix =/path/to/wine/prefix wine/path/to/ausführbar" mit "%command%" ersetzen Gleiche Befehle, die oben verwendet werden. Fügen Sie einfach den vollständigen Befehl hinzu, um Optionen in Spieleigenschaften in Steam App zu starten, wie im folgenden Screenshot gezeigt:

Neues Update: Methode 6 (Mangohud)

Mangohud ist ein universeller FPS -Zähler für Linux, der für fast alle Spiele Echtzeit -Frames pro Sekunde zeigt, die unter Linux ausgeführt werden können. Es arbeitet sowohl mit nativen als auch mit weinbasierten Spielen zusammen und funktioniert gut mit OpenGL- und Vulkan -Renderern. Zusätzlich zu FPS zeigt es auch CPU- und GPU -Lasten angezeigt. Hier ist eine kleine Animation, die zeigt, wie es als Overlay (GIF -Credits) aussieht:

Mangohud wurde in Valves Linux -basierte Handheld -Gaming -Konsole als „Steam Deck“ integriert (im Jahr 2022 eingeführt). Es ist in Standard -Repositories der neuesten Version von Ubuntu erhältlich, sodass Sie es installieren können, indem Sie den folgenden Befehl ausführen:

$ sudo apt installieren Sie Mangohud

Sie können die neueste Version davon in Ubuntu und anderen Linux -Distributionen installieren, indem Sie den neuesten Build von hier herunterladen. Extrahieren Sie nach dem Herunterladen das Archiv und führen Sie den folgenden Befehl aus, um es zu installieren:

$ ./Mangohud-Setup.sh install

Jetzt können Sie Mangohud mit jedem Linux -Spiel verwenden, indem Sie im folgenden Format einen Befehl ausführen (ersetzen Sie den Dateipfad):

$ mangohud/path/to/game/ausführbar/Datei

Wenn Sie ein Spiel vom Steam -Client ausführen, greifen Sie auf den Dialogfeld "Game Properties" zu, indem Sie mit der rechten Maustaste auf einen installierten Spieltitel klicken. Fügen Sie im Feld "Startoptionen" den folgenden Befehl hinzu, um Mangohud für dieses Spiel zu aktivieren:

$ mangohud %command %

Standardmäßig zeigt Mangohud detaillierte Spielmetriken, wie in der obigen Animation gezeigt. Wenn Sie die Größe und das Layout des Overlays anpassen möchten, können Sie die umfangreiche Konfigurationsdatei optimieren, indem Sie hier offizielle Anweisungen folgen, die hier verfügbar sind.