Leserartikel Overlay à la Afterburner unter Manjaro mit mangoHUD

|Moppel|

Captain
Registriert
Apr. 2010
Beiträge
3.570
overlay_example.gif

Hallo Community,

nachdem sich im Manjaro Tagebuch Thread von @Taron einige Leute interessiert am mangoHUD Overlay gezeigt haben, möchte ich es hier kurz vorstellen.

Da ich kein Linux Experte bin, stelle ich hier nur die Vorgehensweise für Manjaro vor. In wie weit die Schritte für andere Distributionen gleich sind oder abweichen, könnt ihr auf der GitHub Seite von mangoHUD nachlesen.

Das hier ist quasi von Anfänger für Anfänger. :)


Installation

Die Pakete mangohud-git und lib32-mangohud-git aus dem AUR mit der Methode eurer Wahl besorgen.


Konfiguration

Für die Konfiguration des Overlays kann man, anstatt die config-Datei zu editieren, auch auf die GUI-Application GOverlay zurückgreifen.
Allerdings tritt bei mir das Problem auf, dass das Programm die von ihm selbst gespeicherte config-Datei beim nächsten Start nicht ausliest.
Deswegen benutze ich es nicht.


Die config-Datei platziert ihr hier $HOME/.config/MangoHud/MangoHud.conf.

Laut readme findet sich eine Beispieldatei im Verzeichnis /usr/share/doc/mangohud. Bei mir war sie nicht da.

Ihr könnt sie euch selbst anlegen oder meine übernehmen.
Code:
### MangoHud configuration file
### Uncomment any options you wish to enable. Default options are left uncommented
### Use some_parameter=0 to disable a parameter (only works with on/off parameters)
### Everything below can be used / overridden with the environment variable MANGOHUD_CONFIG instead

################ PERFORMANCE #################

### Limit the application FPS
# fps_limit=

### VSYNC [0-3] 0 = adaptive; 1 = off; 2 = mailbox; 3 = on
# vsync=

### OpenGL VSYNC [0-N] 0 = off; >=1 = wait for N v-blanks, N > 1 acts as a fps limiter (fps = display refresh rate / N)
# gl_vsync=

################### VISUAL ###################

### Display the current CPU information
cpu_stats
cpu_temp

### Display the current GPU information
gpu_stats
gpu_temp
gpu_core_clock
gpu_mem_clock

### Display the frametime line graph
frame_timing

### Display the current system time
# time

### Time formatting examples
# time_format = %H:%M
# time_format = [ %T %F ]
# time_format = %X # locally formatted time, because of limited glyph range, missing characters may show as '?' (e.g. japanese)

### Change the hud font size (default is 24)
font_size=24

### Change the hud position (default is top-left)
position=top-left

### Display the current CPU load & frequency for each core
# core_load

### IO read and write for the app (not system)
# io_read
# io_write

### Display system ram / vram usage
ram
vram

### Disable / hide the hud by deafult
no_display

### Hud position offset
# offset_x=
# offset_y=

### Hud dimensions
# width=
# height=

### Hud transparency / alpha
background_alpha=0.5
# alpha=

### Color customization
# text_color=FFFFFF
# gpu_color=2E9762
# cpu_color=2E97CB
# vram_color=AD64C1
# ram_color=C26693
# engine_color=EB5B5B
# io_color=A491D3
# frametime_color=00FF00
# background_color=020202

### Change default font (set location to .TTF/.OTF file )
# font_file

### Crosshair overlay (default size is 30)
# crosshair
# crosshair_size=
# crosshair_color=RRGGBB

################## INTERACTION #################

### Change toggle keybinds for the hud & logging
toggle_hud=F9
toggle_logging=F2
reload_cfg=F4

################## LOG #################

### Set amount of time in second that the logging will run for
# log_duration
### Define name and location of the output file (Required for logging)
# output_file

Damit sieht das Overlay so aus, wie oben im .gif gezeigt.

Ich habe den Wert no_display unkommentiert, sodass es nicht beim Start angezeigt wird, sondern nur wenn der Hotkey F9 betätigt wird.

Durch das Unkommentieren des Werts core_load lässt sich die Last auf jedem Kern einzeln anzeigen.

Der Standard F12 Hotkey war bei mir schon durch das drop-down-Terminal belegt.



Starten

Steam-Spiele

Bei den Startoptionen zu dem jeweiligen Spiel den Befehl mangohud %command% hinzufügen.

1587044609938.png



Vulkan-Spiele

Im /home Verzeichnis die Datei .profile erzeugen und den Wert MANGOHUD=1 rein schreiben.
Falls diese schon vorhanden ist, den Wert dazu schreiben.
Ein Reboot ist erforderlich.

Dies funktioniert nur bei Vulkan-Spielen.


64bit OpenGL

mangohud /path/to/app


32bit OpenGL

mangohud.x86 /path/to/app



Loggin

MangoHud bietet die Möglichkeit die FPS mit Timestamps zu loggen. Den Hotkey und die Dauer dazu finden sich in der config.

Anschließend können diese logs auf Flightlessmango.com hochgeladen werden um Graphen zu erzeugen.
Benutzt habe ich diese Funktion noch nicht.




Insgesamt finde ich es fast so schick wie die Afterburner Konfiguration von Kollege @HisN :)
Mit dem passenden Wissen lässt sich das Overlay bestimmt auch noch aufbohren.


Falls ihr Fehler entdeckt oder Ideen habt, freue ich mich über eure Rückmeldung!
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Alexander2, Photon, sedot und 4 andere
Cool! :)
Ist trotz Erwähnung in meinem Thread irgendwie an mir vorbeigegangen, wahrscheinlich weil ich kaum spiele. Mal ausprobieren!

Wie gut, dass sich die angezeigten Daten anpassen lassen. Für mich sind nur CPU, GPU und FPS sowie Frametime relevant.

Weniger ist am Ende doch mehr, gerade ingame. Man(n) will ja im Idealfall spielen und nicht Daten checken. ;)
Ergänzung ()

Das HUD läuft, sieht ganz manierlich aus.

Allerdings bekomme ich das Frametime-Diagramm nicht weg:

frametime-diagramm.png


Auskommentieren der entsprechenden Zeile in der MangoHud.conf hat nichts gebracht.

Code:
### MangoHud configuration file
### Uncomment any options you wish to enable. Default options are left uncommented
### Use some_parameter=0 to disable a parameter (only works with on/off parameters)
### Everything below can be used / overridden with the environment variable MANGOHUD_CONFIG instead

################ PERFORMANCE #################

### Limit the application FPS
# fps_limit=

### VSYNC [0-3] 0 = adaptive; 1 = off; 2 = mailbox; 3 = on
# vsync=

### OpenGL VSYNC [0-N] 0 = off; >=1 = wait for N v-blanks, N > 1 acts as a fps limiter (fps = display refresh rate / N)
# gl_vsync=

################### VISUAL ###################

### Display the current CPU information
cpu_stats
cpu_temp

### Display the current GPU information
#gpu_stats
#gpu_temp
#gpu_core_clock
#gpu_mem_clock

### Display the frametime line graph
#frame_timing

### Display the current system time
# time

### Time formatting examples
# time_format = %H:%M
# time_format = [ %T %F ]
# time_format = %X # locally formatted time, because of limited glyph range, missing characters may show as '?' (e.g. japanese)

### Change the hud font size (default is 24)
font_size=24

### Change the hud position (default is top-left)
position=top-right

### Display the current CPU load & frequency for each core
# core_load

### IO read and write for the app (not system)
# io_read
# io_write

### Display system ram / vram usage
 ram
#vram

### Disable / hide the hud by deafult
 no_display

### Hud position offset
# offset_x=
# offset_y=

### Hud dimensions
# width=
# height=

### Hud transparency / alpha
background_alpha=0.5
# alpha=

### Color customization
# text_color=FFFFFF
# gpu_color=2E9762
# cpu_color=2E97CB
# vram_color=AD64C1
# ram_color=C26693
# engine_color=EB5B5B
# io_color=A491D3
# frametime_color=00FF00
# background_color=020202

### Change default font (set location to .TTF/.OTF file )
# font_file

### Crosshair overlay (default size is 30)
# crosshair
# crosshair_size=
# crosshair_color=RRGGBB

################## INTERACTION #################

### Change toggle keybinds for the hud & logging
toggle_hud=F9
toggle_logging=F2
reload_cfg=F4

################## LOG #################

### Set amount of time in second that the logging will run for
# log_duration
### Define name and location of the output file (Required for logging)
# output_file

Irgendwelche Ideen? Ich möchte wirklich nur CPU, RAM und Frames per Text angezeigt bekommen. (GPU funktioniert mit Intel HD 5500 gar nicht, die Werte zeigen nur 0 an.)
 
Zuletzt bearbeitet:
Ja, direkt zu Anfang schon, da verschwindet das HUD und kommt leider auch nicht wieder, habe mind. 5 Min. gewartet.

Auch Neustarten nach Speichern der neuen Config-Datei hat nichts gebracht, das Frametime-Diagramm ist immer noch da... :(
 
|Moppel| schrieb:
Kannst es mal testweise mit der GUI App versuchen.
Erst einmal passiert dabei das hier:

|Moppel| schrieb:
Allerdings tritt bei mir das Problem auf, dass das Programm die von ihm selbst gespeicherte config-Datei beim nächsten Start nicht ausliest.

Weitere Probleme:
  • Man kann im GUI nur die Taste F10-F12 als HUD on/off einstellen. Für andere F-Tasten muss man auch wieder händisch in die Datei wechseln.
  • Die Einstellung für Position des HUD oben rechts wird bei mir gar nicht übernommen, er schreibt in die Config immer position=top-left
  • Beim speichern der Config freezed das Programm für einige Sekunden komplett, bis die Meldung für erfolgreichen Speichervorgang erscheint.
Ich habe die von GOverlay erzeugte Config-File (selber Dateipfad $HOME/.config/MangoHud/ bearbeitet, um die fehlenden Einstellungen nachzutragen und kleinere Anpassungen vorzunehmen.

mangohud-angepasst.png


Die Farben habe ich absichtlich gedeckter gehalten, damit das HUD nicht zu auffällig wirkt.

Code:
################### File Generated by GOverlay ###################
fps_limit=60
vsync=3
gl_vsync=1
cpu_stats
cpu_temp
cpu_color=1ABC9C
gpu_color=1ABC9C
ram
ram_color=1ABC9C
vram_color=1ABC9C
io_color=1ABC9C
frame_timing=0
frametime_color=00ff00
crosshair_color=000000
crosshair_size=20
background_alpha=0.4
font_size=20
no_display
background_color=020202
position=top-right
text_color=1ABC9C
toggle_hud=F9
toggle_logging=F2
output_file=/home/dominik/mangohud_log_

Für das Erzeugen einer funktionierenden Config-File eignet sich das Tool, aber weil er die Daten beim nächsten Programmstart nicht reinlädt, ist das Tool sonst nicht zur Feinjustierung geeignet. Auf jeden Fall ist das Frametime-Diagramm nun verschwunden. :)
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: |Moppel|
Schicke Sache! Danke!

banished mangohud.png


openSUSE Tumbleweed, Banished und mangoHUD. Geht direkt wie von dir bzw. auf github beschrieben.

Die Konfiguration schau ich mir später mal an (...) dann auch mit einem anderen Spiel.
 
Zurück
Oben