Henrik Rydgård and GitHub
618589abd8
Merge pull request #18362 from unknownbrackets/softgpu-zmirror
...
softgpu: Point depthbuf at the first VRAM mirror
2023-10-15 22:53:00 +02:00
Unknown W. Brackets
f7f05072fe
softgpu: Point depthbuf at the first VRAM mirror.
2023-10-15 10:33:05 -07:00
Henrik Rydgård
f842f16fbe
Inline "DecodeVertexToPushPool" for ease of change.
2023-10-12 11:58:49 +02:00
Henrik Rydgård
12a98baf59
Cleanups, make the various SubmitPrim implementations more similar
2023-10-12 11:58:48 +02:00
Henrik Rydgård
f769b2c8a3
Remove unused functionality from descpool
2023-10-11 12:29:57 +02:00
Henrik Rydgård
0ad2827e14
Vulkan: Fix synchronization when shutting the GPU down in-game.
2023-10-11 12:27:39 +02:00
Henrik Rydgård
183d49329a
Allow writing directly into the packed descriptor buffer, saving a memcpy.
2023-10-11 11:02:17 +02:00
Henrik Rydgård
2ac14f555d
Remove VulkanPushBuffer (keeping our newer replacement VulkanPushPool)
2023-10-11 09:06:24 +02:00
Henrik Rydgård
e4ea4831e9
Delete the vertex cache option from the code.
2023-10-10 15:43:43 +02:00
Henrik Rydgård
078018a943
Move the clockwise calculation out of DrawEngineCommon
2023-10-10 13:16:34 +02:00
Henrik Rydgård
82606b6eb2
Move the clockwise calculation out of the AddPrim loop
2023-10-10 13:00:57 +02:00
Henrik Rydgård
3d949b080d
Prepare VulkanDescSetPool for block allocation
2023-10-10 09:14:10 +02:00
Henrik Rydgård
9c1c09ff5c
Remove commented out code
2023-10-10 09:02:35 +02:00
Henrik Rydgård
ba4d1668ce
Don't forget to update descCount in tess mode
2023-10-10 09:02:35 +02:00
Henrik Rydgård
af47ad035d
Also use the new descriptor mechanism for in-game
2023-10-10 09:00:29 +02:00
Henrik Rydgård
35fcec1e4b
Another small fix, helps Toca series games.
2023-10-10 02:13:25 +02:00
Henrik Rydgård
24409f6f94
Additional check fix
2023-10-09 21:15:17 +02:00
Henrik Rydgård
f6ba4ee4de
Only support extending triangle-based draw calls. Fixes Crazy Taxi.
2023-10-09 21:14:00 +02:00
Henrik Rydgård
10bc6b4cd8
Safety check that doesn't fix crazy taxi
2023-10-09 21:10:53 +02:00
Henrik Rydgård
ced821169e
Bump shader cache versions
2023-10-09 19:39:25 +02:00
Henrik Rydgård
bb38210cfb
We somehow lost the usage_ counter increment in VulkanDescSetPool, fix that
2023-10-09 17:01:35 +02:00
Henrik Rydgård
a8b8580756
Don't forget to check the stall address, even in the optimized primitive loop
2023-10-09 14:08:11 +02:00
Henrik Rydgård
7fd7015987
Fix bug in vertex cache using uninitialized data
2023-10-09 14:03:41 +02:00
Henrik Rydgård
a780d02c07
Minor reordering
2023-10-09 11:54:15 +02:00
Henrik Rydgård
316bc03ac9
Move the destroy function for VKRPipelineLayout to VulkanRenderManager
2023-10-09 11:54:13 +02:00
Henrik Rydgård
ae58fe3828
In GL and Vulkan soft-skin, we might not be fully done decoding when we reach flush. Take that into account.
2023-10-08 16:51:58 +02:00
Henrik Rydgård
c73e2351de
Add checks for unused topology values when loading pipeline caches.
2023-10-08 13:39:04 +02:00
Henrik Rydgård
28ed12aa93
Simplify descriptor pool creation
2023-10-08 12:39:19 +02:00
Henrik Rydgård
b82a34539d
Same as last commit, but in DrawEngineVulkan.
2023-10-08 12:39:19 +02:00
Henrik Rydgård
dbe395dd00
Add a wrapper around VKRPipelineLayout / descsetlayout
2023-10-08 12:39:18 +02:00
Henrik Rydgård
34fbbf2c2a
Split out the descriptorset pool from VulkanMemory.cpp/h
2023-10-08 11:45:00 +02:00
Henrik Rydgård
c7a3e7bc32
Remove a redundant variable
2023-10-06 16:32:59 +02:00
Henrik Rydgård
cd35252400
DrawEngine; Convert strip sequences in a tight loop
2023-10-06 16:25:13 +02:00
Henrik Rydgård
10ccbfd68c
Unify the clearing of variables after a draw call
2023-10-06 15:39:59 +02:00
Henrik Rydgård
d4703e9534
Decoded position format is always the same
2023-10-06 15:39:58 +02:00
Henrik Rydgård
69b43ab734
Extend the Test Drive color ramp smoother to detect up to 3 ramps in a texture.
...
Note that we also offset the lookup slightly to miss the wrap-around
points. The existing 31 scale factor instead of 32, together with that
half-texel, are enough to avoid that problem.
Fixes #18300
2023-10-03 23:30:18 +02:00
Henrik Rydgård
226d25721a
Add a block transfer GPU stat, remove a redundant one
2023-10-03 13:15:55 +02:00
Henrik Rydgård
d07c3c5148
Fix main-thread stalls due to decimate during replacement texture loading
2023-10-03 12:17:43 +02:00
Henrik Rydgård
af7efe4b5d
Fix. Need to flush soft-skinned vertices when changing vertex format.
2023-10-03 11:01:37 +02:00
Henrik Rydgård
200575b2bc
Allow the new optimization through redundant VADDR instructions, very common
2023-10-03 11:01:37 +02:00
Henrik Rydgård
3aa0f5b543
A bit more
2023-10-03 11:01:37 +02:00
Henrik Rydgård
4d95250052
Optimize further
2023-10-03 11:01:37 +02:00
Henrik Rydgård
0260aebc26
Implement fast-path for merging non-indexed draws quickly.
2023-10-03 11:01:37 +02:00
Henrik Rydgård
e63bb0459c
Add a new stat, so we can see per game if the optimization has an effect
2023-10-03 11:01:37 +02:00
Henrik Rydgård
1c49d5718c
Add an offset field that we'll need later
2023-10-03 11:01:37 +02:00
Henrik Rydgård
92ffef2626
Remove some state from IndexGenerator, fix bugs. Mostly works except vertex cache.
2023-10-03 11:01:37 +02:00
Henrik Rydgård
9b411af1f5
It's running.
2023-10-03 11:01:37 +02:00
Henrik Rydgård and GitHub
bd760b9115
Merge pull request #18217 from hrydgard/gles-simplify-disk-cache
...
Simplify disk-cache-load on GLES as well, for the same reasons as #18216
2023-10-03 10:39:27 +02:00
Henrik Rydgård
76ad3dec4d
Revert unclear optimization
2023-10-01 16:43:33 +02:00
Henrik Rydgård
bd931f9cbe
Additional minor cleanups
2023-10-01 14:31:46 +02:00