Unknown W. Brackets
35444b3051
softgpu: Accurately alpha blend.
2021-11-25 19:23:41 -08:00
Unknown W. Brackets
2acf7f4edf
softgpu: Use 0 alpha for 565 alpha blending.
...
We were previously blending as 0xFF.
2021-11-25 19:23:40 -08:00
Unknown W. Brackets
2ef7dd6b03
softgpu: Correct tagging of vertexjit.
2021-11-25 19:21:56 -08:00
Unknown W. Brackets
73de8db996
softgpu: Fix stencil DECR on 5551.
2021-11-25 19:21:56 -08:00
Unknown W. Brackets
53c6a3933d
softgpu: Use ALWAYS for alpha/depth test in clear.
2021-11-25 19:21:55 -08:00
Henrik Rydgård
f991f6a789
Remove the old allocator visualizer. Keep the setting but hide it. Other feedback
2021-11-23 08:55:12 +01:00
Henrik Rydgård
0cbb7ab027
Change the PushBuffer API a bit to not take explicit memory types.
2021-11-22 18:54:09 +01:00
Henrik Rydgård
c2f594cc73
Remove the VulkanDeviceAllocator
2021-11-22 18:54:09 +01:00
Henrik Rydgård
1b1e585a35
More integration, use VMA in VulkanTexture
2021-11-22 18:54:09 +01:00
Henrik Rydgård
712b87ae57
Merge pull request #12108 from hrydgard/vulkan-async-pipeline-creation
...
Vulkan async pipeline creation
2021-11-21 22:33:43 +01:00
Henrik Rydgård
81fba1f4a4
Minor refactor
2021-11-21 22:08:53 +01:00
Henrik Rydgård
f1cd1d535b
Add a hidden setting to turn off the shader cache, for shader compile performance work
2021-11-21 21:25:56 +01:00
Unknown W. Brackets
876c8cd368
softgpu: Fix PixelFuncID size.
...
Oops, can't use unions in bitfields. Also improve typesafety.
2021-11-21 09:40:13 -08:00
Henrik Rydgård
dda425b068
Vulkan: Add a single background thread for pipeline creation
...
Add proper waits for compile-done
Don't rely on non-standard struct initialization of classes
Attempt to drain the pipeline compile queue before destroying the PipelineManager.
Vulkan: Bump the cache version for testing
2021-11-21 18:36:00 +01:00
Henrik Rydgård
62f4875e24
VulkanRenderManager: Add deferred pipeline creation (to get it off the CPU thread)
2021-11-21 18:36:00 +01:00
Unknown W. Brackets
28bc91bd79
softgpu: Add func to tersely name pixel funcs.
2021-11-21 08:23:32 -08:00
Unknown W. Brackets
f8bc6e5b9e
softgpu: Template draw pixel on fb format.
...
This introduces a small 5-10% perf improvement.
2021-11-21 08:23:32 -08:00
Unknown W. Brackets
09dc38080a
softgpu: Move draw pixel code to separate file.
...
This separates things better anyway. No major perf impact.
2021-11-21 08:23:32 -08:00
Henrik Rydgård
938e6d83cb
Merge pull request #15156 from unknownbrackets/vulkan
...
Vulkan: Fix crash on shutdown after device lost
2021-11-21 14:57:47 +01:00
Unknown W. Brackets
f7a029c61f
Vulkan: Fix crash on shutdown after device lost.
...
This happens in SDL every time, apparently.
2021-11-21 05:35:07 -08:00
Henrik Rydgård
824805ec1e
Merge pull request #15154 from unknownbrackets/softjit
...
Use a pixel func ID in software rendering
2021-11-21 10:50:06 +01:00
Unknown W. Brackets
e2f0713cc2
softgpu: Clamp and round fog by mantissa bits.
...
This matches hardware calculated fog values much better.
2021-11-20 20:54:52 -08:00
Unknown W. Brackets
9abf2a4725
softgpu: Confirm mask doesn't hit stencil REPLACE.
2021-11-20 18:53:51 -08:00
Unknown W. Brackets
aa3786ed21
softgpu: Force off alpha blend if uselessly on.
...
This is a simple optimization to prevent some work games sometimes waste.
2021-11-20 15:27:04 -08:00
Unknown W. Brackets
26378f9c89
softgpu: Specialize sprite based on pixel func ID.
2021-11-20 15:27:04 -08:00
Unknown W. Brackets
f7a31c992d
softgpu: Use pixel func ID to draw pixels.
...
This just reduces reliance on gstate directly, and should help keep things
consistent.
2021-11-20 15:27:04 -08:00
Unknown W. Brackets
953200c995
softgpu: Add func to calculate pixel func ID.
...
This normalizes some things, and eventually can be used for a jit key.
2021-11-20 15:27:04 -08:00
Unknown W. Brackets
46a4347976
Merge pull request #15141 from unknownbrackets/softgpu
...
Rectangle fast path tweaks for softgpu
2021-11-15 07:08:57 -08:00
Unknown W. Brackets
b6bdd69572
softgpu: Clear by dividing out subpixel first.
2021-11-15 06:26:11 -08:00
Unknown W. Brackets
f802c3bc6d
softgpu: Add some comments and cleanup.
2021-11-15 06:09:12 -08:00
Unknown W. Brackets
babd63c644
softgpu: Tune thread minimums better.
...
Darkstalkers seems more sensitive to these than many other games, this
improves performance more.
2021-11-14 18:44:30 -08:00
Unknown W. Brackets
66f635cba0
sfotgpu: Use threads to apply clears.
2021-11-14 18:31:46 -08:00
Unknown W. Brackets
2ab7499d8d
softgpu: Combine sliced rectangles.
...
This mostly affects clears, and reduces overhead. Only about 2%
improvement, but it's a small change.
2021-11-14 18:31:46 -08:00
Unknown W. Brackets
0281e2f017
softgpu: Split out rectangle path for combining.
2021-11-14 18:31:46 -08:00
Unknown W. Brackets
9545e3b0e2
softgpu: Fixup range cull for fans and fast path.
2021-11-14 18:31:45 -08:00
Unknown W. Brackets
fb6fadbbb7
softgpu: Fast path rectangles as fans.
...
Some games, such as Legend of Heroes III, use fans instead of strips.
2021-11-14 18:31:45 -08:00
Unknown W. Brackets
09a9927b82
softgpu: Use range loops for sprite fast path.
2021-11-14 18:31:45 -08:00
Unknown W. Brackets
8a5f07b860
Vulkan: Don't cache vulkan_ with draw context.
...
Since we can get the VulkanContext cheaply from the draw context, it's
easier to make sure things stay up to date.
2021-11-14 15:25:28 -08:00
Unknown W. Brackets
0dc7688838
GPU: Cleanup some extra pointers in fb managers.
...
These weren't being used / weren't final anyway.
2021-11-14 14:13:48 -08:00
Unknown W. Brackets
55cde6bd6a
softgpu: Check flat z in fast path.
2021-11-14 12:27:39 -08:00
Unknown W. Brackets
361c8f966c
softgpu: Fast path triangles without textures.
...
The fast path may still be useful in this case.
2021-11-14 12:27:39 -08:00
Unknown W. Brackets
5bb6245b1f
softgpu: Fix leaked range flag on cull.
...
Fixes some backgrounds in Final Fantasy 4, probably others.
2021-11-14 08:43:52 -08:00
Unknown W. Brackets
f66e243727
softgpu: Correct scissor for pixel centers.
2021-11-07 11:19:41 -08:00
Henrik Rydgård
f58e75e462
Remove unused variable
2021-11-07 16:31:28 +01:00
Henrik Rydgård
43dc54bc4a
Comment fix, remove assert
2021-11-07 16:30:47 +01:00
Henrik Rydgård
c60feef55e
Remove support for 16-bit textures from the upscaling shader, to shorten it for benefit of mobile GPUs
2021-11-07 16:08:57 +01:00
Henrik Rydgård
281ddc2437
Speed up the 4xBRZ upscaler with 16x and the MMPX one with 4x by not doing redundant work
2021-11-07 15:47:05 +01:00
Henrik Rydgård
6349704924
Switch texture scaling shaders to a fixed scale model, preparing for the next change.
2021-11-07 13:12:28 +01:00
Henrik Rydgård
c111d6cc2d
Remove the copy-compute-shader path
2021-11-07 12:55:39 +01:00
Henrik Rydgård
1f502b8f94
Merge pull request #15106 from unknownbrackets/depth-cull
...
GLES: Explicitly enable ARB_cull_distance
2021-11-06 21:35:11 +01:00