Manchmal sind zu viele FPS im Games unnötig. Echt jetzt. Warum sollte beispielsweise ein Indie-Adventure mit 200 FPS angezeigt werden, wenn das menschliche Auge eh nur 24 Bilder pro Sekunde sehen kann uns weniger Bilder pro Sekunde genügen?

Weniger «Frames per Second» (FPS) sind tatsächlich manchmal mehr. Manchmal braucht ein Spiel nicht mehr als 30 Bilder pro Sekunde, es sei denn es ist ein Action-Kracher. Im übrigen erkennt das menschliche Auge nur 24 FPS Je nach dem braucht man Ingame nicht die volle Anzahl FPS und nicht selten «laggt» es eben nicht wegen zu wenig Bildern in der Sekunde, sondern aus anderen technischen Gründen (Mikro-Rucklern zb).

Nachtrag: Auch ich bin dem Mythos «Das Auge sieht nur 24 FPS» aufgesessen. Das ist falsch! Hierzu lohnt es sich ungemein dieses Video anzuschauen, in nur 9 Minuten ist man sehr viel schlauer.

Diese Gründe sprechen für eine FPS-Limitierung

Die Framerate zu limitieren kann aus ganz unterschiedlichen Gründen Sinn machen:

  • Hitzeentwicklung: Besonders bei Gaming-Laptop ist eine FPS-Limitierung sinnvoll, insofern das Spiel es erlaubt. Endlich darf das Notebook wieder auf dem Schoss gehalten werden, ohne dass unser Allerheiligstes verbrennt!
  • Stromverbrauch: Auch hier punktet eine FPS-Limitierung, weniger Stromverbrauch schont die Batterie und bedeutet mehr Akkulaufzeit.
  • Spulenfiepen: Es kann grässliches, quietschendes Spulenfiepen (engl.: Coil-Whine) entfernen. Spulenfiepen tritt manchmal bei zu viel FPS auf, zum Beispiel in einem Spiele-Menü mit 9000 FPS.
  • Frame-Lock: Im besten Fall werden die Frames auf den immer erreichten FPS-Drop im Spiel gelockt. Schwankt die Framerate beispielsweise zwischen 80-120 spielt es sich flüssiger, wenn die Framerate auf 80 gelockt wird.
  • V-Sync: Manche Spiele ruckeln bei aktiviertem V-Sync. Dank dem FPS Limit kann unter Umständen das Ruckeln behoben werden, zudem werden beispielsweise 70 anstatt 90 FPS auf einem 60 Hz Bildschirm flüssiger dargestellt.

Lange Zeit war es beinahe unmöglich, die FPS unter Linux zu limitieren. Viele der Notlösungen über ein erzwungenes V-Sync funktionieren schlecht oder man macht den Doktortitel bis es klappt. Für viele OpenGL Games gibt’s jetzt eine einfache Lösung.

So geht’s: libStrangle installieren – FPS limitieren

Tausend Dank an den User «torkel104», er hat einfaches Programm geschrieben womit die Bilder pro Sekunde auf eine beliebige Anzahl limitiert werden können. Es funktioniert nicht ganz in allen OpenGL Games, aber in den Meisten.

Die Installation ist einfach, auch wenn das Wort make bei einigen Lesern zu Kopfschmerzen führt (zu Recht). Keine Angst, bei libstrangle als Framerate-Limiter geht das Rucke-Zucke.

Libstrangle für Linux/OpenGL liegt auf Github als Download bereit. Nach dem Herunterladen und entpacken muss zwingend das Meta-Paket libc-6-dev-i386 nachinstalliert werden (Ubuntu/Debian). Dann kompilieren und installieren:

cd ~/Downloads/libstrangle-master
sudo apt-get install libc6-dev-i386
make
sudo make install

That’s it. Falls beim Kompilieren (make) Fehler auftreten fehlen nebst libc-6-dev-i386 auch noch die Pakete gcc, gcc-multilib und/oder gcc-32bit – einfach nachinstallieren und nochmal kompilieren, also make ausführen.

Um jetzt die FPS zu limitieren gibt es verschiedene Möglichkeiten. Innerhalb Steam-Games geht am einfachsten mit Rechtsklick » Properties » Set Launch Options… » hinzufügen „strangle FPS=eineNummer %command%„, ohne Anführungszeichen.

Nach dem "make" und "make install" ist strangle Systemweit verfügbar. So klappt danach die FPS-Limitierung in Steam.
Nach dem „make“ und „sudo make install“ ist strangle Systemweit verfügbar. Jetzt klappt die FPS-Limitierung auch in Steam.

Außerhalb Steam können die meisten OpenGL-Spiele mittels strangle 60 /path/to/game in den FPS limitiert werden. Easy, nicht!? Vielleicht gibt es in Zukunft noch andere Wege der Begrenzung, in jedem Fall sollte man das Readme kurz überfliegen.

TEILEN
elysium
Elysium spielt seit 2012 unter Linux, aktuell mit Linux Mint 18. Beruflich bin ich im Bereich Middleware auf Linux-Server unterwegs. Für diverse Adobe Applikationen bleibt mein Dualboot Linux/Windows bestehen. Und in seltenen Fällen für DirectX only Games..

11 KOMMENTARE

  1. Einfacher ist es Vsync anzuschalten, was die Wiederholrate automatisch auf Bildschirm Wiederholrate begrenzt.
    Bei MESA automatisch an, bei proprietären Treibern auch nur ein klick der dann global für alle apps gilt

  2. Ich kann es ehrlich gesagt nicht wirklich nachvollziehen, warum es notwendig ist, wein Spiel mit mehr als 30 fps zu haben, wenn das menschliche Auge sowieso nur 24 Bilder pro Sekunde erkennen kann?
    Von 24 auf 30 ist noch eine kleine Reserve drin, das kann ich noch verstehen. Aber was nutzen 100 fps bei einem Spiel, wenn ich nur 24 Sehen kann.

HINTERLASSE EINE ANTWORT