Commit Graph
33585 Commits
Author SHA1 Message Date
Henrik Rydgård 08d2cb4486 Bump the shader cache version 2022-09-24 22:40:42 +02:00
Henrik Rydgård 9f3dfe7ebe Vulkan: Don't compile pipeline variants that don't make sense given their flags.
Ran into this with cache files from previous version of my change.

Also bumping the shader cache ID again to avoid this in other ways, but
good to be robust here.
2022-09-24 22:39:22 +02:00
Henrik Rydgård c3b4caa30b Merge pull request #15984 from lvonasek/compat_openxr_gta
OpenXR - Sky fix for GTA games
2022-09-24 17:16:28 +02:00
Lubos 5b334a7945 OpenXR - PreprocessStep function implemented 2022-09-24 16:32:55 +02:00
Lubos 09bf5f507b OpenXR - Simplify skyplane detection in GTA 2022-09-24 11:35:51 +02:00
Henrik Rydgård 895b916a12 Merge pull request #16094 from unknownbrackets/softgpu-bloom
softgpu: Optimize rectangle sampling/blending used in bloom
2022-09-24 11:25:05 +02:00
Lubos 84b7485798 OpenXR - Get rid of an ugly if condition 2022-09-24 11:14:20 +02:00
Unknown W. Brackets c76d31dfa8 GPU: Cleanup unused CheckAlpha() funcs. 2022-09-24 02:00:03 -07:00
Unknown W. Brackets 6e6535c263 softjit: Skip reading dst pixel where blended out.
Sometimes used by blends used purely to multiply the source color by
something, usually prep for bloom.
2022-09-24 02:00:03 -07:00
Unknown W. Brackets a4c3718431 softgpu: Optimize rectangle sampling/blending.
Sometimes the vertex color or alpha can allow us to optimize away some
multiplication.
2022-09-24 02:00:03 -07:00
Unknown W. Brackets 794a5c07ad softgpu: Ignore a needless color test case.
This happens in Ridge Racer, and we can entirely skip the color test.
2022-09-24 02:00:03 -07:00
Henrik Rydgård 7aee1f2bfb Merge pull request #16092 from unknownbrackets/vulkan-debugger
Vulkan: Avoid crash on two backbuffer steps
2022-09-24 07:59:07 +02:00
Henrik Rydgård 0ce4e1be9d Merge pull request #16093 from unknownbrackets/ge-frame-dump
GE Debugger: Fix small tex/clut recopying
2022-09-24 07:53:03 +02:00
Unknown W. Brackets 7ff5434968 GE Debugger: Tag frame dump replay VRAM writes.
Just for debugging, it's helpful especially paired with softgpu tagging.
2022-09-23 21:20:14 -07:00
Unknown W. Brackets c3c5450b8f GE Debugger: Fix small tex/clut recopying.
If it's less than 256 bytes, we can't mark the entire VRAM area copied.
This still helps frame dumps avoid excessively slow VRAM recopying
situations, but fixes issues like missing trees in #12738.
2022-09-23 21:18:39 -07:00
Unknown W. Brackets cc447aa868 HLE: Fix bad logging without latestSyscall. 2022-09-23 18:47:51 -07:00
Unknown W. Brackets 7b1ec28c30 Vulkan: Avoid crash on two backbuffer steps.
Happens when resuming from stepping, sometimes: first
EmuScreen_BackBuffer, which is done so UI is functional during stepping,
and then the actual blit.

Since this is an uncommon case, let's just allow it by reusing the
presentCmd instead of submitting it early.  Otherwise it ends up in a
pending state.
2022-09-23 18:47:51 -07:00
Unknown W. Brackets b56bd0d0fc Merge pull request #16090 from hrydgard/more-vulkan-cleanup-work
Simplify synchronization in VulkanRenderManager
2022-09-23 17:24:34 -07:00
Henrik Rydgård d743bfac93 Merge pull request #16085 from unknownbrackets/softgpu-vert
softgpu: Cache reused indexed verts
2022-09-24 00:00:26 +02:00
Henrik Rydgård 3393d47e92 Remove ill-formed asserts 2022-09-23 23:14:36 +02:00
Henrik Rydgård 1259283c2e More tweaks, fix crash on exit (double-join thread) 2022-09-23 22:10:29 +02:00
Henrik Rydgård df1297bccf Small tweak 2022-09-23 20:51:46 +02:00
Henrik Rydgård c671b3f413 Can't seem to get around this condition variable... Oh well. 2022-09-23 20:45:52 +02:00
Henrik Rydgård f6c78584f6 Readback fix 2022-09-23 19:45:50 +02:00
Henrik Rydgård ef7c8844f8 Greatly simplify the thread synchronization. 2022-09-23 19:40:50 +02:00
Henrik Rydgård f784112814 Flatten the Run function, to make it easier to reorganize. 2022-09-23 19:40:50 +02:00
Henrik Rydgård 5e63cdbcc4 Make functions private that should be private 2022-09-23 19:40:50 +02:00
Unknown W. Brackets 77085cf497 Merge pull request #16088 from hrydgard/vulkan-cleanup-work
Assorted cleanup work (leaks, Vulkan)
2022-09-23 07:14:58 -07:00
Lubos adffbb2ea7 Merge branch 'master' into compat_openxr_gta 2022-09-23 14:16:58 +02:00
Henrik Rydgård 7bef90297c Best practices layer warning: Don't pass in unused clear values. (probably zero impact, heh). 2022-09-23 13:54:14 +02:00
Henrik Rydgård ac4ca592c3 Handle depth buffer write-after-write hazards in the queue runner 2022-09-23 13:47:11 +02:00
Henrik Rydgård 0acfa906b4 Fix leak of shader modules from thin3d. 2022-09-23 13:31:32 +02:00
Henrik Rydgård 7884e4ccb3 Another uninitialized variable (VAI minihash/hash) 2022-09-23 12:33:16 +02:00
Henrik Rydgård ac7ca963db Make valgrind happy 2022-09-23 12:24:43 +02:00
Henrik Rydgård ac3eb876a8 Fix memory leak (of Promise objects) in VK pipeline wrappers 2022-09-23 10:56:46 +02:00
Henrik Rydgård d79828270a Add Burnout Dominator to list of games that require buffered rendering
It does run without but looks really bad, don't want reports of this.
2022-09-23 09:13:34 +02:00
Henrik Rydgård bb6919ebcb Merge pull request #16087 from unknownbrackets/depth-upload
GPU: Upload depth only on first usage
2022-09-23 09:07:33 +02:00
Unknown W. Brackets 93c909a88e GPU: Upload depth only on first usage.
Fixes various glitches in Kingdom Hearts, etc.
2022-09-23 00:04:14 -07:00
Henrik Rydgård 8ffe4921a8 Merge pull request #16086 from unknownbrackets/softgpu-selfrender
softgpu: Fix self-render detect in Ridge Racer
2022-09-23 08:42:21 +02:00
Unknown W. Brackets 66b6dfd0a5 softgpu: Fix self-render detect in Ridge Racer.
When we flush we mark all pending writes zero, but we rely on this being
set to detect self-render.

TRANSFORM_ALL was wrong as well, sometimes clearing BINNER_RANGE.
2022-09-22 20:36:15 -07:00
Unknown W. Brackets 88b3b26ed3 softgpu: Cache reused indexed verts.
This happens a lot for spline/bezier, so can significantly speed up curve
heavy scenes.  Isn't necessarily that common otherwise, though.
2022-09-22 18:27:59 -07:00
Unknown W. Brackets 067fac6817 softgpu: Skip matrix multiply for fog factor calc.
We can just use a dot product instead, and always skip viewpos.
2022-09-22 18:19:53 -07:00
Unknown W. Brackets 84a3f6de71 softgpu: Remove unnecessary state param.
Oops, meant to remove this when refactoring imm prims.
2022-09-22 18:18:49 -07:00
Henrik Rydgård c02ce03267 Merge pull request #16082 from hrydgard/remove-clut-compat-option
Remove the UploadDepthForCLUTTexture compat flag
2022-09-22 23:26:12 +02:00
Henrik Rydgård 3db0613114 Merge pull request #16084 from hrydgard/ignore-stride-with-texheight-1
Fix Ridge Racer lens flares - ignore stride if texHeight == 1, when matching tex/fb
2022-09-22 23:02:32 +02:00
Henrik Rydgård a6d6e0a3cc Texture/Framebuffer match: Ignore stride if texHeight == 1. Fixes Ridge Racer lens flares. 2022-09-22 22:11:16 +02:00
Henrik Rydgård 0ab5d4be7f Use Unknown's idea from #16081 instead of the UploadDepthForCLUTTexture compat.ini flag. 2022-09-22 20:00:35 +02:00
Henrik Rydgård c76d7e844c Fix Vulkan regression of #16075 due to silly typo. 2022-09-22 19:37:46 +02:00
Henrik Rydgård 078fa9beb2 Fix corruption of Ridge Racer speedometers with AutoMaxQuality enabled.
See #8509
2022-09-22 15:27:17 +02:00
Henrik Rydgård c3cbb68452 Merge pull request #16072 from hrydgard/depth-free-renderpass
Vulkan: Don't have renderpasses store/load depth buffers when we don't use them
2022-09-22 11:05:25 +02:00