Commit Graph

93 Commits (e555a942fb980b81c0a161ef87e327b2cfd6cf3e)

Author SHA1 Message Date
jackun e555a942fb
Use single IO stats instance 2 years ago
jackun 4608fa5e3a
vkGetInstanceProcAddr(instance, "vkGetInstanceProcAddr") should return our vkGetInstanceProcAddr not the next in the chain. 2 years ago
flightlessmango e435764eff
Merge pull request #662 from nanokatze/master
Set VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT when creating swapchain
2 years ago
FlightlessMango 9c15d093d6 Only reset logger if param is not set 2 years ago
FlightlessMango c50c815630 destroy logger with vulkan instance 2 years ago
FlightlessMango 9758d2a286 Try to get correct amd gpu when multiple 2 years ago
Constantine a04230ad29 Set VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT when creating swapchain
Fixes #582
2 years ago
FlightlessMango ac58c30bbc Use driverInfo for driver name/version instead 3 years ago
FlightlessMango e7de7b5b93 Get device name before system info 3 years ago
FlightlessMango fbda58c907 Some windows fixes 3 years ago
FlightlessMango 45be485a13 mangohud control 3 years ago
FlightlessMango 5fee3bc5e3 Change _params to pointer 3 years ago
FlightlessMango b001eb4714 Move _params init to overlay.cpp 3 years ago
jackun 9b6a39dfe9
sed s/gnu_linux/linux/g 3 years ago
FlightlessMango 3ac7772a55 Add universal param 3 years ago
jackun d1617818cd
Fix OpenGL gpu_name 3 years ago
jackun 891abdf3b9
Skip setting up vulkan render if HUD is hidden 3 years ago
jackun 355c521f12
Misc small clean ups and fixes 3 years ago
jackun a82e27d978
Use spdlog macros so logging can be completely disabled during compile-time 3 years ago
jackun 7d3b6b946d
Don't reinit stuff when re-creating swapchain
Partial revert of e13e98e03a
3 years ago
jackun 944202f273
Fix #ifdef scope in `overlay_DestroyInstance` 3 years ago
jackun 2f807a4c0d
Add `spdlog` wrap and logging 3 years ago
jackun 88d801bd7e
Move functions not directly related to vulkan from vulkan.cpp to overlay.cpp 3 years ago
jackun 8244d7f288
Fix vulkan driver's patch version 3 years ago
jackun 750d2cddb5
Make engine type per instance 3 years ago
FlightlessMango e39513cfa4 still check PengineName if engine OpenGL 3 years ago
FlightlessMango 3f120b1fc5 don't set engine to vulkan if already set 3 years ago
Alessandro Toia 570bef468b Cosmetic changes to engine detection 3 years ago
FlightlessMango 5330573c8c don't rely on std in engine detection 3 years ago
FlightlessMango 2e5fc31711 use vulkan to determine if zink 3 years ago
jackun 34f964eab9
Use aligned buffer size with vkMapMemory too 3 years ago
Alessandro Toia 856c333e09 Fix wine param not properly detecting proton experimental 3 years ago
Alessandro Toia 272b035ca8 Fix wine param not detecting proton experimental 3 years ago
jackun 30cdc912a8
Rework blending equation to preserve alpha in output buffer
bda12e5fdd
3 years ago
jackun bdd87f5eff
Use SetTexID instead 3 years ago
jackun 6c737dc734
Round up buffer allocation sizes to `nonCoherentAtomSize`.
For some Vega APUs. Or don't use VK_WHOLE_SIZE?
3 years ago
jackun f77a73ce8a
Fix scoped_lock clash with >= c++17 3 years ago
FlightlessMango 6286313478 MSVC building fixes 3 years ago
jackun 8b2255b35c
Fix crash on destroying NULL swapchain
Vulkan spec allows calling vkDestroySwapchainKHR with VK_NULL_HANDLE swapchain.

mesa MR#5616
3 years ago
FlightlessMango cc83f2878e Try to guess mesa version 3 years ago
FlightlessMango 76fb1ec3cb Remove lsof as dependency 3 years ago
FlightlessMango e13e98e03a Fixed debug output of gpu name 3 years ago
FlightlessMango f8fa73daf2 Get logged gpu name from pci_ids instead 3 years ago
FlightlessMango 66a07d77ba Use read_line for checking cpu sched 3 years ago
FlightlessMango 3261d12ad7 Add checking cpu scheduler 3 years ago
jackun 53cca5e723
Merge remote-tracking branch 'origin/master' into develop 3 years ago
FlightlessMango d0c35b9587 Add detection of Damavand 3 years ago
Witold Baryluk 25f7201770
Disable lsof warnings explicitly
On most system lsof is compiled with warnings enabled.

This causes spam multiple times per one mangohud invocation (up to about 10 times even), like this:

```
lsof: WARNING: can't stat() tracefs file system /sys/kernel/debug/tracing
      Output information may be incomplete.
```

Disable warnings explicitly.
3 years ago
Witold Baryluk c92f805c2d Prevent infinite recursion when using Mesa zink.
When using zink (`MESA_LOADER_DRIVER_OVERRIDE=zink`),
running any app (OpenGL or Vulkan), will trigger running
`glxinfo`. Unsetting of `LD_PRELOAD` is not sufficient,
because if using `zink`, it will load Vulkan, and load Vulkan
implicit layer for Mangohud, using `/usr/share/vulkan/implicit_layer.d/MangoHud.json`,
which will cause it to reenter this function in another process,
causing infinite recursion (until the Vulkan driver finally errors
out with too many VkDevices  / contexts created).
I have easily have seen recursion depths of 200+ until this happen,
and sometimes takes up to 2 minutes, with 2000 extra shell and `cut`
processes in the process tree.

Fix this by marking recursion entrance.

This makes glxmark start in less than 1 second, instead
about 60 seconds.

When at it us `glxinfo -B`, which is significantly faster
on zink, yet provides all information we need.
3 years ago
flightlessmango bd71d0b5fd Check for lsof before trying to use it 4 years ago