Talkashie
dabb2cc9a0
Fix typos, improve consistency
...
Fixes typos where spelling or grammar is objectively wrong.
Changes wording and capitalization in some areas to be more consistent with other areas.
2023-07-28 13:09:06 +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
715e3856f2
vk: Update async compute (fast) to use the new sync API
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
c1d875d841
vk: Handle VK_ERROR_FRAGMENTATION when allocating descriptor pools
2023-06-14 01:12:11 +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
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
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
kd-11
57070aa8ff
vk: Minor refactor in OOM handler to skip scans if we already found a match
2023-05-15 12:28:19 +03:00
kd-11
29d87a3743
vk: Refactor the vram exhausted handler
...
- Mostly a de-uglify pass
2023-05-15 12:28:19 +03:00
kd-11
9a2b06f35f
vk: Refactor vram exhausted handler to minimize risk of UAF hazards
...
1. A hard sync before starting the routines on fatal will release some memory going in improving chances of a successful eviction elsewhere.
2. A hard sync on exit cleans up, ensuring no UAF (with caveats)
2023-05-15 12:28:19 +03:00
Megamouse
2d4e02f277
overlays: add ppu compile message if the progress dialog is unavailable
2023-03-05 02:55:59 +01:00
kd-11
1b8a69154f
rsx: Use non-owning container to ellide a derpy allocation with msvc
2023-03-01 01:10:06 +03:00
kd-11
7c04b00e2b
rsx/vk: Remove stale include
2023-02-24 00:46:53 +03:00
kd-11
ddc9e74aa8
rsx/overlays: Putting it all together
...
- Migrate dialogs with input-only threads to use the unified input
system
2023-02-24 00:46:53 +03:00
kd-11
78a588cacb
rsx: Use animated icon and message queue for shader compiler notifications
2023-02-03 09:13:27 +03:00
kd-11
5f0467b084
rsx: Remove framebuffer_status_valid flag and move to state
2023-01-26 11:42:39 +03:00
kd-11
6adcabda29
rsx: Fix graphics state foot-gun
2023-01-26 11:42:39 +03:00
kd-11
2752cd1390
rsx/vk: Fix some problems with dynamic state updates
2023-01-11 16:48:53 +03:00
kd-11
10b56415e8
vk: Avoid loading the whole dynamic state properties if only the shader changed
...
- Handles a common case where a game engine switches materials but uses the same configuration
e.g rendering two types of wall or ground may need different shaders but similar state properties
2023-01-11 16:48:53 +03:00
kd-11
f71e7ef1cc
vk: Switch programs if the primitive type changed
...
- This will change when EXT_dynamic_state is integrated
2023-01-11 16:48:53 +03:00
kd-11
c7fed20f3c
vk: Short-circuit program load if state did not change
...
- TODO: Incorporate VK_EXT_extended_dynamic_state
2023-01-11 16:48:53 +03:00
kd-11
3dba894369
rsx: Minor refactoring RSXThread
...
- Part 1 of many
2023-01-11 16:48:53 +03:00
kd-11
4def7f143c
rsx: Fix logicOp behavior when blending is also active
2022-12-27 02:56:43 +03:00
kd-11
a05e3f02b8
rsx: Avoid expensive protection scan by sharing some data between surface and texture cache
2022-12-17 20:16:58 +03:00
Eladash
8980fc5524
rsx: Fix exceptions
2022-12-17 14:27:20 +01:00
kd-11
9c0b2338cf
rsx: Fix shader compilation
2022-12-11 15:21:58 +03:00
kd-11
a0ef1a672c
rsx: Implement interpolation using barycentrics
2022-12-11 15:21:58 +03:00
kd-11
e3b23822fd
rsx: Pass on shader flags to the cache
2022-12-11 15:21:58 +03:00
kd-11
b156b40f8f
rsx: Fix clear color for formats with less than 32-bit width
2022-10-31 13:39:37 +03:00
Elad Ashkenazi
c214f45e14
Savestates/rsx/IO: Resume emulation on long START press, enable "Start Paused" by defaut ( #12881 )
...
* Savestates: Enable "Start Paused" by default
* Emu/rsx/IO: Resume emulation on long START press
* rsx: fix missing graphics with savestates' "Start Paused" setting
* rsx/overlays: Add simple reference counting for messages to hide them manually
* Move some code in Emulator::Pause() so thread pausing is the first thing done by this function
2022-10-29 19:53:00 +02:00
kd-11
ffe8133865
vk: Avoid unnecessary dynamic state updates
2022-10-07 11:53:34 +03:00
kd-11
7140e82189
rsx: Fix program invalidation rules
2022-10-07 11:53:34 +03:00
kd-11
533f960854
rsx: Handle some more corner cases
2022-10-03 12:57:16 +03:00
kd-11
765208a181
rsx: Avoid clobbering CELL memory when splitting fbos
2022-10-03 12:57:16 +03:00
kd-11
4417701ea7
rsx: Track orphaned surfaces' parent addresses
2022-10-03 12:57:16 +03:00
kd-11
cd53bb7eff
rsx: Avoid on-the-fly ZCULL allocations with unordered_map
2022-09-09 23:17:27 +03:00
kd-11
c55a889c23
vk: Initialize buffer info blocks to avoid null descriptors
2022-08-14 23:53:50 +03:00
kd-11
d846142f0c
vk: Reimplement compliant async texture streaming
...
- Use CONCURRENT queue access instead of fighting with queue acquire/release via submit chains.
The minor benefits of forcing EXCLUSIVE mode are buried under the huge penalty of multiple vkQueueSubmit.
Batching submits does not help alleviate this situation. We simply must avoid interrupting execution.
2022-07-25 21:05:31 +03:00
Elad Ashkenazi
fcd297ffb2
Savestates Support For PS3 Emulation ( #10478 )
2022-07-04 16:02:17 +03:00
kd-11
efff2a78c8
vk: Restructure how the conditional render evaluation is done ( #12071 )
...
Fixes conditional render fast-path
2022-05-24 11:11:21 +03:00
kd-11
ec2d529832
rsx: Separate loop interrupts from graphics state
...
- The interrupts are for multithreaded signals andmake the main loop run more aggressively for the next cycle
2022-05-20 16:29:27 +03:00