Henrik Rydgård
ae6e0d182e
Vulkan: Fix function loading regression affecting MSAA
...
When loading function that have been merged into core, use the core
names.
2024-04-05 17:28:37 +02:00
Henrik Rydgård
9f9881dfe3
Move some code, minor cleanup.
...
See #18987
2024-04-04 12:30:41 +02:00
Henrik Rydgård
32fe47d761
Fix or ignore some various Vulkan validation errors
2024-04-03 13:37:40 +02:00
Herman Semenov
5a0d54be83
[Common/Data/GPU/Input/System/UI] Added const reference for function params
2023-12-14 14:21:11 +03:00
Henrik Rydgård
2c751d39f8
Vulkan: Add simple delete count to GPU profiler, to make sure we don't have more resource churn
...
Also fix the render pass type name lookup table.
2023-10-12 09:02:45 +02:00
Henrik Rydgård
13cfd9c3d6
Add Mesa as a known GPU driver "vendor".
2023-08-17 22:06:03 +02:00
Henrik Rydgård
8e1dc35dd1
Vulkan: Show instance extensions, both enabled and available, in sysinfo
2023-08-03 18:56:47 +02:00
Henrik Rydgård
1c83c4a1fe
Vulkan: Enable the present-id/present-wait/display-timing extensions
...
Doesn't actually use any of them yet, just making sure enabling them
doesn't cause any weird issues. They will be used for the future display
timing rewrite.
2023-07-14 10:43:47 +02:00
Henrik Rydgård
c81ec8c74d
List Vulkan present modes in system info, show the current one
2023-04-20 00:21:06 +02:00
Henrik Rydgård
56d792f422
Sketch the new VulkanPushPool
2023-03-15 01:25:00 +01:00
Henrik Rydgård
cc9c01b1d0
Vulkan texture uploads: Take optimalBufferCopyRowPitchAlignment into account
...
Might marginally increase texture upload performance on some GPUs, but
mainly just the right thing to do.
For example, on Intel, this is 64.
2023-03-05 17:32:41 +01:00
Henrik Rydgård
cf52324e9e
Vulkan: Fix pipeline cache clearing.
...
Extracted from #16759 and bugfixed. Fixes a leak of Vulkan pipelines.
I guess another way would be to queue the variants for destruction at
the same time as we queue the callback, but I like this better.
2023-01-09 09:49:55 +01:00
Henrik Rydgård
25115fee7f
Found a bug where we tried to look up queue family -1 when initializing the frame profiler.
2022-12-23 11:37:59 +01:00
Henrik Rydgård
31d5881c90
Enable support for Android Vulkan validation. Fix a minor validation error.
2022-12-22 11:13:52 +01:00
Henrik Rydgård
28e1b532bd
Detect Apple/MoltenVK and allow multisampling. Unfortunately no support for sample rate shading.
2022-12-01 22:49:01 +01:00
Henrik Rydgård
8b9b80f044
Add path that uses CreateRenderpass2, we're gonna need it for depth resolve.
2022-12-01 22:49:00 +01:00
Henrik Rydgård
6daecb4e2b
Add check for tiling GPUs. We'll use this to inform on what MSAA modes to support.
2022-12-01 22:48:59 +01:00
Henrik Rydgård
162290147f
UWP build fix. Had to reshuffle some stuff and compile some Vulkan files.
2022-11-06 15:54:00 +01:00
Henrik Rydgård
31fd928a5c
Name more image views. Very useful with a little patch to the Vulkan debug layers.
2022-10-27 11:05:59 +02:00
Henrik Rydgård
fb250c4b29
More multiview work
2022-10-27 11:05:58 +02:00
Henrik Rydgård
1d8ab38ce5
Vulkan: Use v2 feature checks, and add check for multiview features.
...
Extracted from the multiview PR, and renamed some stuff.
2022-10-24 00:21:28 +02:00
catsout
b0ceeede79
Vulkan: fix wayland swapchain size 1x1
...
From Vulkan spec,
surfaceCapabilities.currentExtent can be 0xFFFFFFFF(-1)
Define a callback to get drawsize from window creator
relate:
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkSurfaceCapabilitiesKHR.html
https://github.com/KhronosGroup/Vulkan-Docs/issues/590#issuecomment-347932321
2022-10-15 19:02:42 +08:00
Henrik Rydgård
14b5a1a7cd
Fix pipeline lifetime issue, misc.
2022-09-08 00:38:32 +02:00
Henrik Rydgård
8dc8fae16d
Vulkan: Add support for listing all the available surface formats in system info.
...
Enabling the EXT_swapchain_colorspace extension lets the driver expose
all the formats it really supports.
Used this to discover that my Galaxy S21 supports Display-P3 which is a wider
gamut than sRGB. Might be able to do some color boosting mode for fun.
Or, use this stuff to play around with HDR?
2022-01-25 19:22:49 +01:00
Henrik Rydgård
df2f0df155
Make the Vulkan GPU log profiler a runtime developer setting.
...
I keep forgetting to disable the define on commit, this is a better
solution.
2021-12-19 22:50:14 +01:00
Henrik Rydgård
748b8287a6
Add format string support to Vulkan log-profiler
2021-12-19 22:21:34 +01:00
Unknown W. Brackets
148ca08047
Vulkan: Disable profiler by default again.
2021-12-19 09:12:58 -08:00
Henrik Rydgård
80ae4b039c
Vulkan: Be more restrictive about texture upscaling on "slow" devices.
...
Applies the same rules as for software upscaling in this case.
Should fix the stutters seen in #15109
2021-12-16 21:00:49 +01:00
Henrik Rydgård
9755781704
Oops, accidentally enabled the logging GPU profiler by default.
2021-12-13 09:01:13 +01:00
Henrik Rydgård
10db19efc4
Add a 2x2 downsampled version of 4xBRZ as 2xBRZ (save memory bandwidth)
...
fmt
2021-12-12 23:19:29 +01:00
Henrik Rydgård
3833d935f4
Fixes when profiler is disabled.
...
Typo, validation fix
More fixes
Fix mipgen logging
Disable the logging profiler by default again
Important to use the macro
2021-12-12 12:42:40 +01:00
Henrik Rydgård
9945620504
Switch to macros to easily disable the new profiling. Add missing scope
2021-12-12 12:11:59 +01:00
Henrik Rydgård
55fe21db1e
Add a simple GPU profiler to profile individual events, rather than full passes.
2021-12-12 12:11:54 +01:00
Henrik Rydgård
2cbadefb29
Fix bugs in deletion. Delete redundant functions.
2021-11-22 19:02:08 +01:00
Henrik Rydgård
8d5247ddf3
Convert the PushBuffer to use VMA.
2021-11-22 18:54:09 +01:00
Henrik Rydgård
1b1e585a35
More integration, use VMA in VulkanTexture
2021-11-22 18:54:09 +01:00
Henrik Rydgård
8f9ce03a8d
Start integrating VMA
2021-11-22 18:54:08 +01:00
Conrad Kreyling
e3540ccd17
First pass on using Display KHR, needs proper init flags
2020-12-16 13:15:39 -05:00
Henrik Rydgård
b7d674411e
Test parsing of generated OpenGL shaders too (by using glslang).
2020-10-31 18:32:43 +01:00
Henrik Rydgård
940611fe65
Remove the USE_GENERAL_LAYOUT_FOR* debug defines.
2020-10-11 11:06:54 +02:00
Henrik Rydgård
dc0f7ca8ee
VK: Copy depth buffer if we can't blit. Some GPUs can't blit to depth.
...
Fixes some recent issues with Intel GPUs on Vulkan.
2020-10-11 10:57:35 +02:00
Henrik Rydgård
0e3a84b4a8
Move most GPU things to Common.
...
It works after the move, on Windows and Android at least.
Deletes the D3DX9 shader compiler loader, which was not used.
2020-10-04 23:39:02 +02:00