xddxd
b5f1f50a16
Get rid of mobile Kepler class and add some missing GPUs
2021-06-06 08:07:43 +02:00
kd-11
98f534b1bd
vk: Rewrite partial clear shader
...
- Completely removes the feedback loop and replaces with hardware channel masking
2021-06-01 12:54:10 +03:00
kd-11
9199b1b1d8
vk: Improve compatibility with sub-par drivers and hardware
...
- Adds workarounds for INTEL + MSAA
- Adds support for younger drivers where all features may not be
implemented.
Things that won't out-right break the emulation can be
disabled.
2021-05-30 22:35:34 +03:00
kd-11
a736350859
rsx/vk: Use backend configuration to track options that can be modified on a per-device basis
2021-05-25 20:54:17 +03:00
Nekotekina
2491aad6f2
types.hpp: implement min_v<>, max_v<>, SignedInt, UnsignedInt, FPInt concepts
...
Restrict smax to only work with signed values for consistency.
Cleanup <climits> includes.
Cleanup <limits> includes.
2021-05-23 19:43:51 +03:00
Nekotekina
04cac6cd33
logs.hpp: refactoring (logs::message)
...
Make .error/.warning/... callable objects which can be pointed to.
Make .always() more hard to access.
Memory layout optimizations.
2021-05-20 01:08:32 +03:00
kd-11
a4f4b81e6b
vk: Add some more debugging utils for RDC captures
...
- Labels make life so much easier
2021-05-09 13:07:47 +03:00
kd-11
0b18ec8208
vk: Allow flipping without wait
2021-05-09 13:07:47 +03:00
David Carlier
b09970f159
couple of warning build fixes
2021-05-09 09:25:40 +02:00
Megamouse
1f295bba5b
VK: ReSharper warning fixes
2021-04-30 08:23:16 +02:00
kd-11
1d9dd8d29d
vk: Add support for tagging objects to ease debugging
...
- Makes use of VK_EXT_debug_utils
2021-04-28 16:53:02 +03:00
Nekotekina
b3fb6d7d18
Add and fix -Wredundant-decls (GCC)
2021-03-23 22:48:57 +03:00
kd-11
3e8a00d264
Basic fixups
2021-03-12 02:27:05 +03:00
kd-11
bd6c187fcd
vk: Tune event polling for higher throughput
2021-03-12 02:27:05 +03:00
kd-11
b4e821c28d
vk: Flip on async texture uploads
2021-03-12 02:27:05 +03:00
kd-11
41f5158247
vk: Sync main pipe with async jobs if any
2021-03-12 02:27:05 +03:00
kd-11
77e312fb99
vk: Add the async task scheduler
2021-03-12 02:27:05 +03:00
Nekotekina
53af2dbb3f
Add/fix warning -Wignored-qualifiers (GCC/clang)
...
Fix simple_array::const_iterator as a part of it.
2021-03-09 03:09:50 +03:00
xddxd
6d91a9fe6f
Possible workaround for mobile Kepler chips
2021-03-08 15:46:03 +03:00
Nekotekina
87af905018
Enable -Wunused-parameter
2021-03-06 18:07:08 +03:00
kd-11
1becd2f788
vk: Remove redundant double barrier
...
- Luckily it was not too harmful in single queue submissions
2021-03-03 13:17:04 +03:00
Nekotekina
ea5e837bd6
fixed_typemap.hpp: return reference
2021-03-02 16:08:14 +03:00
kd-11
4bef176e9b
vk: Fix inadvertent self-assign
2021-02-28 18:00:20 +03:00
kd-11
d2de8a87bf
vk: Explicit initialization of command pool queue family
2021-02-26 15:08:14 +03:00
kd-11
12cad7c393
vk: Add per-queue-family scratch resources and double buffer them
2021-02-26 15:08:14 +03:00
kd-11
be1238cc95
vk: Add support for queue family migration and refactor some texture upload code
2021-02-26 15:08:14 +03:00
kd-11
0e7e5b59ae
vk: Handle old GPUs without proper async queues
2021-02-23 23:22:41 +03:00
kd-11
d459da1378
Formatting fixes only
...
- Mostly remove camelcase usage in old code.
- Properly annotate vulkan API imports with _vk prefix to make it clear they are not regular variables.
2021-02-23 23:22:41 +03:00
Nekotekina
3063369322
vk::render_device::create: try to remove failing assertion
2021-02-23 19:46:37 +03:00
kd-11
cb7cf40b5e
vk: Move queue family management from swapchain to logical device
2021-02-23 00:04:53 +03:00
Nekotekina
0bcece4585
Make -Woverloaded-virtual an error
...
Had to devirtualize some functions.
2021-02-15 15:50:05 +03:00
kd-11
9f97bab717
vk: Fixup and refactor for exclusive fullscreen stuff
2021-02-15 10:27:36 +03:00
13xforever
76518d4c59
add a hidden option to prevent switching to exclusive full screen mode
...
this is helpful for people streaming RPCS3, or to prevent disabling HDR mode in Windows
2021-02-14 22:01:33 +03:00
Ani
b858fceb4f
vk: Support incomplete lavapipe
...
Disable features still unimplemented by lavapipe when using it:
- samplerAnisotropy
- shaderStorageBufferArrayDynamicIndexing
- wideLines
as of mesa 21.1.0-dev (aea36ee05e9, 2020-02-10)
2021-02-11 14:49:37 +03:00
kd-11
6f4dbf4fcd
vk/vma: Always use aligned requests
...
- Performance optimization when combined with vma optimizations added by me
2021-02-10 11:37:14 +03:00
kd-11
bf66c36ba4
rsx/texture_cache: Add support for reusing dirty images if possible
...
- Avoids a silly situation where a texture is discarded and an identical copy created immediately afterward.
Unfortunately allocating memory blocks is really slow so avoid it as much as possible.
2021-02-10 11:37:14 +03:00
Megamouse
9feb92df1b
More informative Error message on Vulkan driver crash
...
The message might not be the only reason, but at least it might help someone like me, who had no idea what he was looking at.
2021-01-31 15:51:21 +01:00
kd-11
f7fdfe52bc
vk: Fix custom event signals
2021-01-24 14:24:55 +03:00
kd-11
7de0ff337b
vk: Polishing and cleanup
...
Some spec violations fixes
Make the option dynamic
2021-01-24 14:24:55 +03:00
kd-11
58d367d704
vk: Add host-imported DMA buffers
2021-01-24 14:24:55 +03:00
kd-11
c2cbc62be6
vk: Refactor some uber-headers
...
- VKHelpers was the rug everything was swept under for a long time.
This commit essentially deprecates its usage across most of the backend.
2021-01-10 12:04:31 +03:00
Nekotekina
9ba8f4795c
Remove redundant #pragma once
2021-01-06 23:33:37 +03:00
Megamouse
11db3151ae
VK refactoring Part 2 ( #9542 )
2021-01-05 10:49:03 +03:00
matoro
187216096d
Build: Add include for building on certain configs
2021-01-04 10:04:51 +03:00
Megamouse
7262f3d0b7
VK: make static chip_family_tables const
2020-12-31 22:57:17 +03:00
Megamouse
6f80fd0063
VK: move static chip_family_tables to cpp
2020-12-31 22:57:17 +03:00
Megamouse
7a51b7a019
VK: move helpers to vkutils
2020-12-31 22:57:17 +03:00