FlightlessMango
c3fc0f10b0
Start separating vulkan, keybinds, overlay and font
4 years ago
FlightlessMango
1c5baef992
Move try_log into update_hud() and fix formatting
4 years ago
FlightlessMango
c337fddc58
Move try_log() into render_imgui
4 years ago
FlightlessMango
c4a7d3002b
Moved try_log() outside of no_display
4 years ago
FlightlessMango
9ddd075b18
Get actual frametime for logs
4 years ago
jackun
cec98369ae
Include array, explicitly
4 years ago
FlightlessMango
c1a255260f
Add recording circle to render_mango
4 years ago
FlightlessMango
0230efee8b
Small adjustments to render_mango
4 years ago
jackun
e56b7ded15
Use `setenv`instead as `putenv` makes Lutris' wine crash for some reason (threading?)
4 years ago
Alessandro Toia
632f1e7000
Add wine and wine colors to overlay
4 years ago
FlightlessMango
8a39043a13
Merge branch 'master' into develop
4 years ago
jackun
443271f0b5
Convert hud color params to linear for sRGB image formats
4 years ago
jackun
6f176a3f3b
Fix cpu usage formatting (float parsed as int)
4 years ago
jackun
c75232389b
A little more "atomic" cpu temp update for hud renderer; whitespace
4 years ago
FlightlessMango
ce80203ee6
Minimal hud for recording
4 years ago
FlightlessMango
a06e01c7ef
Merge branch 'develop'
4 years ago
FlightlessMango
4fd1c5f3e7
Fixed some basic errors
4 years ago
FlightlessMango
9445ab4acc
Warning that permit_upload = 0
4 years ago
FlightlessMango
6a443f35ac
Upload multiple logs
4 years ago
jackun
fc62624b7b
Recalculate right alignment offset if font scale changes
4 years ago
flightlessmango
c046c250d8
Merge branch 'develop' into benchmark-percentages
4 years ago
jackun
55430d7571
Initialized fps limiter or wait for 300 years
4 years ago
Lars Krämer
7cc76142f1
Tidy up DBus helper classes
...
make sure metadata is up-tp-date when switching players (WIP)
4 years ago
Lars Krämer
6484e09f01
Implement wrapper class for DBusMessageIter
...
Implement for_each-style helpers for common constructions
Reimplement most of the DBus message parsing in terms of these
4 years ago
Lars Krämer
5850643db4
Change the media player functionality to allow changing active media
...
player
4 years ago
larskraemer
a28931ef6b
General cleanup ( #272 )
...
* Cleanup unused struct fields, use uniform include guards
4 years ago
flightlessmango
eafa62356b
Merge branch 'develop' into benchmark-percentages
4 years ago
Lars Krämer
0b29a7ea06
Remove conflict in render_imgui
4 years ago
Lars Krämer
329725c134
Move Log uploading; Cleanup
4 years ago
Lars Krämer
4101237fdd
Move logging functionality into a class
4 years ago
jackun
c63037efb5
Use 1-channel font textures; glyph ranges support; vulkan image descriptors and "helper" functions
...
* To save some memory, use just 1-channel alpha-only textures
* Add some sort of wider glyph ranges support
* Chop single-ish vulkan font image uploading function into separate reusable helper functions
* Use descriptor set for ImTextureID but probably use texture array and push constants for "fast-path" if need arises
4 years ago
Lars Krämer
20221217d4
Frame-timing using chrono
4 years ago
Lars Krämer
22026cbc60
Create MesaClock class, use chrono classes for time points/durations
4 years ago
Kingsley McDonald
0e1fe708c8
make use of new float parsing function
...
i've also moved the input validation checks to the config parser, so that
warnings aren't displayed in the terminal output every time a benchmark is
run with an invalid percentile entry.
4 years ago
Kingsley McDonald
aa77a351de
implement configurable benchmark percentiles.
4 years ago
FlightlessMango
e957358786
Force a hw values update on log start
4 years ago
jackun
44060c2b80
Force blacklist re-check at certain points
...
Wine preloader that executed a non-blacklisted app may execute a blacklisted app,
or vice versa, and previous check applies to new app too.
4 years ago
FlightlessMango
a9463ae06c
Start logging after first update
4 years ago
Alan Witkowski
61a443bd50
add .csv extension to log file and rename function that generates the log filename suffix
4 years ago
larskraemer
ecd84c8cc0
Logging options ( #234 )
...
* Added config options for logging
* Documentation
* Log everything
* Add RAM/VRAM usage to the log
* add loggingOn-check for memory usage
* Always init GPU stats
* Move functions from logging.h to logging.cpp, remove params from writeFile
4 years ago
jackun
66ddada43c
Fix `readlink` overloading for fortified musl
...
Issue #231
4 years ago
FlightlessMango
e2ec80d84e
Upload log keybind setup
4 years ago
FlightlessMango
f14c9a7587
Moved exec function in to logging.h
4 years ago
FlightlessMango
8e34e752e5
Merge branch 'master' into develop
4 years ago
Kingsley McDonald
6178c5859c
adjust benchHeight for 0.1% and fix percentages.
4 years ago
Kingsley McDonald
053a1d8a44
add 0.1% lows to the brief benchmark overlay
4 years ago
jackun
5ec6519832
Add `media_player_order` to set media player metadata order
4 years ago
FlightlessMango
b9c00fc510
Check pci.ids without gpu_stats
4 years ago
FlightlessMango
38a78fa01e
Fix logging window if bg alpha is 0
4 years ago
Rémi Verschelde
f915d890f2
Fix -Wformat-security warning with GCC 10.1
4 years ago
FlightlessMango
0728d49a1d
Fix width with no params
4 years ago
FlightlessMango
df631a2343
Reduced width with io rw
4 years ago
FlightlessMango
e9b1b70ebc
Fixed nextRow for gpu_power
4 years ago
FlightlessMango
135f3a5009
Fixing compiler warnings and removing control
4 years ago
FlightlessMango
59268a34b3
Always do nextRow() with core_clock
4 years ago
FlightlessMango
bc5d41f921
Changed IO rd/wr to rw
4 years ago
FlightlessMango
4a5e05c979
Trim gpuName from pci.ids
4 years ago
FlightlessMango
572ba69e3e
More width fixing
4 years ago
jackun
b68f78028d
Fix "IO RD/RW" typo
...
Also micro-micro-micro optimization, probably: move READ/WRITE if statement before WRITE
as you'd probably find it more useful than just WRITE.
4 years ago
jackun
1495b1e88f
ifdef guard nvml header
4 years ago
jackun
953c8d0e0f
Add meson option `with_nvml`
4 years ago
jackun
2220cb9d74
Decouple `engine_version` from `fps`
4 years ago
jackun
16b05dfc5e
Show gpu core clock or power usage in 4th column or both on next row if both are enabled
4 years ago
jackun
b837ce930e
[whitespace] fix indentation from `gpu_name` to `arch`
4 years ago
FlightlessMango
db151bb236
Add log_interval check to per frame log write
4 years ago
FlightlessMango
d8727110b0
Replaced log_period env with log_interval param
4 years ago
FlightlessMango
128fbd4b88
Per frame logging use output_file and date
4 years ago
FlightlessMango
33a5ad6571
Format gpu_text and cpu_text in textColored
4 years ago
FlightlessMango
dd1667bf3e
Fixed typo
4 years ago
FlightlessMango
2d0ba9a076
Params to override cpu/gpu text
4 years ago
jackun
c04658456a
Wider glyph ranges for custom font; media player text scaling with `font_scale_media_player` param
4 years ago
FlightlessMango
c254347688
Use histogram in benchmark too
4 years ago
FlightlessMango
ac926bbfd5
Added histogram param
4 years ago
FlightlessMango
078617f999
Added param for engine version
4 years ago
jackun
ff48525313
Consolidated amdgpu file handles to a struct and add `gpu_power` param to show power usage for amdgpu/nvml
4 years ago
jackun
5057a47b05
Potential buffer overflow, use snprintf instead
4 years ago
jackun
159305bbc7
Use `display_time` instead of recalculating
4 years ago
FlightlessMango
1d375fd155
Removed crosshair
4 years ago
FlightlessMango
434aa04356
Fixed bench position even more
4 years ago
FlightlessMango
7f9bb2e6b8
Fixed mistake in bench positioning
4 years ago
FlightlessMango
54f83ee3d6
Corrected position and sizing for quick bench
4 years ago
FlightlessMango
22c25b6247
Fixo typo in quick benchmark
4 years ago
jackun
c5bb35c10d
Merge branch '159' into develop
4 years ago
FlightlessMango
92b86ad8bf
Added plot graph to quick benchmark
4 years ago
Valters
1afea91dab
Add multi hotkey
4 years ago
FlightlessMango
75f9128ce5
Redesigned logging, adding quick benchmark
4 years ago
FlightlessMango
927fee0f59
No need to add version for nvidia twice
4 years ago
jackun
40255b62f9
Fix get_device_name, don't substr if no '[' in gpu name
4 years ago
jackun
2622270e5c
Init remote control params even if blacklisted
4 years ago
jackun
d694a61d21
Add `media_player_name` and `media_player_color` params
...
Allows to set "main" media player and text color
4 years ago
jackun
6c2b00ffb7
Append driver version
4 years ago
jackun
768297b430
[editorconfig] Apply whitespace rules
4 years ago
FlightlessMango
bc0a0aa53e
No need to save deviceName for later
4 years ago
jackun
2308a4228a
Fix vulkan device name
4 years ago
FlightlessMango
31b01aab9f
Uncommented most of prop.driverVersion code
4 years ago
FlightlessMango
848b296477
Display vulkan driver
...
Co-authored-by: Georg Lehmann <dadschoorse@gmail.com>
4 years ago
FlightlessMango
f3422af562
Param gpu_name
4 years ago
FlightlessMango
1ddcc531ff
Get device name from pci.ids and display it
4 years ago
FlightlessMango
ed62155310
Parse pci.ids
...
Co-authored-by: jackun <jack.un@gmail.com>
4 years ago
FlightlessMango
a2cc14f738
Get deviceID
4 years ago
FlightlessMango
3f4949f593
Added top-center overlay position
4 years ago
FlightlessMango
9cf6c502d2
Missing brackets for versions in render_imgui
4 years ago
FlightlessMango
e170e64f9c
[Params] Version option
4 years ago
jackun
0ab53a1c06
Move MANGOHUD_PCI_DEV to config file param 'pci_dev'
...
Relax format requirements as long as it loosely resembles 'domain🚌 slot.func' format.
4 years ago
FlightlessMango
bff9958284
Changed pthreads to std::thread
4 years ago
Sporif
1e1dcd3a98
Fix vulkan driver version shown for Nvidia and Intel on Windows
4 years ago
jackun
29e5c4e460
Show device's name and vulkan driver version
4 years ago
jackun
8b855e3251
Fix mul/div order when normalizing io stats to sample per second as `fps_sampling_period` is also an integer.
4 years ago
Sporif
61ef9244e9
Disable dlsym hooking by default and fix LD_PRELOAD propagation to new processes
...
This allows `mangohud steam` to work
5 years ago
Sporif
c4a00704cf
Separate out blacklist implementation
5 years ago
Georg Lehmann
1eca184157
Vulkan Overlay: Don't try to change the image layout to present twice
...
The render pass already does the transition.
The pipeline barrier is still needed to transfer the queue family ownership.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3740 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3740 >
5 years ago
jackun
88188ee1da
[dbus] Generalize a bit more but still give Spotify special treatment, keep track of 'org.mpris.MediaPlayer2' service providers
...
Keeps and draws spotify's and other player's metadata separately.
Keep track of 'org.mpris.MediaPlayer2' service providers so when
a player that was the last metadata sender quits, we can stop
showing its metadata on overlay.
5 years ago
jackun
b40fb95a04
[OpenGL] Better version parsing and fix gl version checks for vertex arrays
5 years ago
jackun
a9311bb578
Allow to specify gpu with pci bus id by setting env var `MANGOHUD_PCI_DEV=xxxx:xx:xx:x` where x's are "domain 🚌 slot.function"
5 years ago
jackun
e5a256bfc0
Move DBus init to overlay_params so it can be enabled/disabled on the fly from a single place
5 years ago
FlightlessMango
d454ff43a2
Hide all hud elements on no_display
5 years ago
jackun
8024736253
Add DBus loader, combined ticker for Spotify metadata
5 years ago
FlightlessMango
d975278396
Dbus with spotify
5 years ago
jackun
2f034c6d1e
Use X11 loader functions instead of linking to X11 libs
5 years ago
jackun
049e960589
Add 'use_xnvctrl' feature to allow building without libXNVCtrl support
5 years ago
Lionel Landwerlin
1fc94600e9
vulkan/overlay: Add a workaround semaphore for application presenting without one
...
When an application calls vkQueuePresent() on a different queue than
the one we run our drawing on and it doesn't give a semaphore to wait
on, let's insert our own semaphore so that we don't race the
application's drawing.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2540
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3893 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3893 >
5 years ago
jackun
32ae051434
Add Bethesda launcher to blacklist
5 years ago
Sporif
c24d9015cd
Blacklist support
...
Initial blacklist: Battle.net.exe, EpicGamesLauncher.exe, IGOProxy.exe, IGOProxy64.exe, Origin.exe, Steam.exe
Signed-off-by: jackun <jack.un@gmail.com>
5 years ago
jackun
cf17f70dab
Remove unused statistics related code
5 years ago
jackun
e72a7bdd76
[config] Try to set notifier file descriptor to non-blocking mode; add start/stop_notifier functions
...
If setting to non-blocking fails, just closing the fd should kill it anyway
5 years ago
jackun
2ab386d70a
Fix double definition
5 years ago
FlightlessMango
a84f5ef178
Show mangohud arch in hud
5 years ago
FlightlessMango
c9558eec50
Merge branch 'xnvctrl' into develop
5 years ago
jackun
ae3a155e22
Keep engine name per vulkan instance
5 years ago
jackun
f92a2a07db
GiB not GB
5 years ago
jackun
fbae1dfcc0
More checks for XNVCtrl support. Favor NVML but fallback to XNVCtrl if supported.
5 years ago
jackun
1915352c86
Draw versions after table so they don't get clipped
5 years ago
jackun
6ad6bffade
Use ImGui's DisplaySize so display size for layer positioning etc can be set the same way for vulkan and OpenGL
5 years ago
jackun
3d46ccafe1
Show OpenGL version below engine name too to avoid it getting clipped
5 years ago
jackun
8aa0783b4a
Show vulkan/opengl version
...
OpenGL glGetIntegerv(GL_[MAJOR|MINOR]_VERSION) don't work on versions < 3.0 though
5 years ago
FlightlessMango
8fb13e23e4
Resize window when reloading config
5 years ago
jackun
a0f5cb56a2
[config] Guard overlay_params from the thread with mutex
5 years ago
jackun
34184abf2e
[config] loop in the notifier thread and reload configuration file if it is changed
5 years ago
FlightlessMango
c5dad16612
Listen for modify on config file
5 years ago
FlightlessMango
b0e1fe9321
[params] set targetFrameTime in params.cpp
5 years ago
jackun
abef561573
Disable CPU stat(s) if it failed to initialize
5 years ago
FlightlessMango
b3286cbe48
check if opengl/vulkan with is_vulkan bool
5 years ago
jackun
13e57578c3
Fix update_hud_info indentation
5 years ago
jackun
154380e056
Don't update time if not enabled
5 years ago
jackun
9a7a4d99e0
Don't update CPU freq/temp if not enabled
5 years ago
jackun
6bbc89a9cc
Don't update CPU stats if not enabled
5 years ago
jackun
16552b25e3
Don't update RAM/IO stats if not enabled
5 years ago
jackun
57f3b3470d
Remove param_unit()
5 years ago
FlightlessMango
e24f5dfc8b
added log_duration param and updated readme
5 years ago
FlightlessMango
8641392ca7
added MANGOHUD_FONT to params as font_file
5 years ago