kd-11
eee7bf0c97
vk: Don't load depth-stencil textures on the transfer queue
2023-07-12 03:20:08 +03:00
oltolm
0c94606fcf
Make compile with msvc, clang and gcc on Windows
2023-07-11 21:40:30 +03:00
kd-11
186fe53279
rsx: Fix the default shadow codegen path
2023-07-09 19:33:48 +03:00
kd-11
10af0e8c93
vk: Disable anisotropy if the anisotropic level is meaningless
2023-07-04 09:31:51 +03:00
kd-11
d13cf0e29a
rsx: Fix shader interpreter
...
- It broke ages ago
2023-07-04 09:31:51 +03:00
kd-11
69eb1401a9
vk/gl: Fix debug overlay stats
2023-07-04 09:31:51 +03:00
kd-11
4decad6f6b
rsx: Force compatibility checks when applying fast-path optimizations
2023-07-04 09:31:51 +03:00
kd-11
8f98e572e1
rsx: Use designated initializer for the dangerous copy_region_descriptor type
...
- We need to move more dangerous braced initializations to c++20
- Also adds a base address variable which will come in handy
2023-07-04 09:31:51 +03:00
kd-11
c818f8af82
vk: Fix namespace pollution in sync module
2023-07-04 09:31:51 +03:00
kd-11
8ebf24d8e7
vk: Do not clear memory if we're going to overwrite it with a copy anyway
2023-07-04 09:31:51 +03:00
kd-11
b788e05396
rsx: Implement GPU copy ellision through coordinate transform
...
- TODO: Some corner cases still exist where format may not be a match after a cache merge.
2023-07-04 09:31:51 +03:00
kd-11
d77a78cdf1
rsx: Rework texture coordinate handling to support clamping and a more sane scale-bias setup
2023-07-04 09:31:51 +03:00
kd-11
89c81d9f22
rsx: Switch common codegen to use the glsl scripts
2023-07-04 09:31:51 +03:00
kd-11
931a2c516f
vk/rsx: Fix build errors and warnings
2023-06-30 18:38:14 +03:00
kd-11
2f9e1cf4df
vk: Get rid of some spammy debug code
2023-06-30 18:38:14 +03:00
kd-11
68d1c38f3b
vk: Minor refactor to make early-exit branches trivial and easier to read
2023-06-30 18:38:14 +03:00
kd-11
c4acea6c82
vk: Fix some regressions in synchronization2 behavior
2023-06-30 18:38:14 +03:00
kd-11
7ebabddfe0
vk: Fix GPU hang
2023-06-30 18:38:14 +03:00
kd-11
a047ddffc0
vk: Restructure gpu labels and add them as an event backend
2023-06-30 18:38:14 +03:00
kd-11
92992a5406
vk: Use pipeline barriers for proper event sync
2023-06-30 18:38:14 +03:00
kd-11
9ecfecb83e
Constify
2023-06-27 16:41:30 +03:00
kd-11
ec4565263d
Dump extensions info to the log
2023-06-27 16:41:30 +03:00
kd-11
ed1da364e5
vk: Fix a bunch of corner cases when syncing GPU and host memory
2023-06-27 16:41:30 +03:00
kd-11
942dbbc8fa
vk: Add explicit sync when doing copy_image_to_buffer
2023-06-27 16:41:30 +03:00
kd-11
3e8f9cbbf2
Add flags to handle sync domain with v2 events
2023-06-27 16:41:30 +03:00
kd-11
322b5dac79
Properly enable synchronization2 feature
2023-06-27 16:41:30 +03:00
kd-11
5a85fee3f1
Silence logspam about unused parameter
2023-06-27 16:41:30 +03:00
kd-11
0a0ef50caf
Try to fix build
2023-06-23 15:21:17 +03:00
kd-11
e20f1587cd
Workaround for old compilers
...
Xcode is not yet c++20 compliant
2023-06-23 15:21:17 +03:00
kd-11
715e3856f2
vk: Update async compute (fast) to use the new sync API
2023-06-22 14:59:58 +03:00
kd-11
850166eca1
vk: Reimplement events using synchronization2 extension
2023-06-22 14:59:58 +03:00
kd-11
d5654d64d5
Nicer variable names
2023-06-16 15:29:36 +03:00
kd-11
06459eb37b
vk: Latch query copy requests to reduce number of vulkan commands used
2023-06-16 15:29:36 +03:00
kd-11
49c6c2c529
vk: Do not hard-sync on first sign of fragmentation
...
- It is very likely that the resource would be available if we just waited a while for the GPU queue to clear.
- Instead of also discarding the current work, first check if we can get by without a hard sync.
2023-06-14 01:12:11 +03:00
kd-11
29f3eec957
vk: On pool recovery, rescan the subpool table in case a new pool really cannot be created
2023-06-14 01:12:11 +03:00
kd-11
c1d875d841
vk: Handle VK_ERROR_FRAGMENTATION when allocating descriptor pools
2023-06-14 01:12:11 +03:00
kd-11
27349c5c69
vk: Cleaner approach to object lifetime management
2023-06-10 02:54:16 +03:00
kd-11
872aa2b358
vk: Improved OOM handling
...
- Don't aggressively delete surfaces unless we're really crashing
- Release barrier resources before destroying the surface in case of fatal crash
2023-06-10 02:54:16 +03:00
kd-11
4d565eade6
rsx: Drop format information from the vertex cache and use a simpler model that is much faster
2023-06-10 01:36:10 +03:00
kd-11
97f7461aa9
rsx: Allow the vertex cache to be enabled independently of MTRSX
2023-06-10 01:36:10 +03:00
kd-11
7e2eaf43ca
rsx: Capture stats about vertex cache performance
2023-06-10 01:36:10 +03:00
kd-11
6f834e99d2
vk: Disable conditional rendering on MacOS
2023-06-06 22:05:54 +03:00
kd-11
86c7b31b6d
Force disable conditional render on macOS
2023-06-06 22:05:54 +03:00
kd-11
ac0c60b740
vk: Rename gc_wrapper_t to gc_callback_t which is more relevant
2023-06-01 19:25:50 +03:00
kd-11
f2f95a20a3
vk: Minor improvement to descriptor and garbage collector interaction
2023-06-01 19:25:50 +03:00
kd-11
12f213ffad
rsx: Trim the number of in-flight invalidated resources (temp cache)
...
- This drastically improves memory allocation behavior.
Holding too many invalidated resources can lead to a cascading overallocation error as old resources hold refs to even older resources and nothing gets deleted.
2023-06-01 19:25:50 +03:00
kd-11
6a2ea62f82
vk: Minor cleanup
2023-05-30 16:50:08 +03:00
kd-11
6cfd817b5a
vk: Fix descriptor-related crashes
2023-05-30 16:50:08 +03:00
kd-11
c99ef4b09f
vk: Refactor descriptor handling
2023-05-30 16:50:08 +03:00
kd-11
10171c19c3
vk: Unify descriptor allocation
...
- Pool management should be a backend implementation detail.
2023-05-30 16:50:08 +03:00