Commit Graph

31318 Commits

Author SHA1 Message Date
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
Unknown W. Brackets
ca53972175
Merge pull request #15169 from stuken/fix_libretro_vulkan_memory_leak
Destroy backbuffer when shutting down libretro vulkan context.
2021-11-25 08:31:44 -08:00
Stuart Kenny
c0e61c9658 Add review suggestion. 2021-11-25 16:03:23 +00:00
Stuart Kenny
d609a7c8bf Destroy backbuffer when shutting down vulkan conext. 2021-11-25 15:32:44 +00:00
Unknown W. Brackets
34476a2b9d PPGe: Prevent special ampersand handling. 2021-11-24 18:53:24 -08:00
Henrik Rydgård
fb755bac13
Merge pull request #15166 from stuken/libretro_fix_vma_assert
Fix vma assert on libretro content close
2021-11-24 19:03:26 +01:00
Stuart Kenny
afdd51c0e6 Build with correct preprocessor flag 2021-11-24 16:37:29 +00:00
Henrik Rydgård
c7bba9bf72
Merge pull request #15162 from hrydgard/integrate-vma
Integrate VMA (Vulkan Memory Allocator)
2021-11-23 09:19:26 +01: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
8f29d9542c Buildfixes 2021-11-22 19:53:00 +01:00
Henrik Rydgård
2cbadefb29 Fix bugs in deletion. Delete redundant functions. 2021-11-22 19:02:08 +01:00
Henrik Rydgård
a7591d7826 Switch framebuffers to use VMA for allocation as well 2021-11-22 18:54:09 +01:00
Henrik Rydgård
8d5247ddf3 Convert the PushBuffer to use VMA. 2021-11-22 18:54:09 +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
8f9ce03a8d Start integrating VMA 2021-11-22 18:54:08 +01:00
Henrik Rydgård
eceb691f92 Add VMA to ext/ (AMD's Vulkan Memory Allocator) 2021-11-22 18:54:08 +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
29f54befbd Comment improvement, restore accidental deletion 2021-11-21 21:34:05 +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
Henrik Rydgård
b3bd068051
Merge pull request #15158 from unknownbrackets/softjit
softgpu: Fix PixelFuncID size
2021-11-21 19:05:13 +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
Henrik Rydgård
be152acf7b
Merge pull request #15157 from unknownbrackets/softjit
Refactor draw pixel and hardcode another path
2021-11-21 17:49:06 +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
Henrik Rydgård
7c4c352659
Merge pull request #15155 from unknownbrackets/softgpu-fog
softgpu: Clamp and round fog by mantissa bits
2021-11-21 10:49:08 +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
Henrik Rydgård
b6f376fa6d
Merge pull request #15153 from hrydgard/depointerify-promise
Threading: Remove a level of indirection from Promise<T> and Mailbox<T>
2021-11-20 23:19:27 +01:00
Henrik Rydgård
4f85b8b2ef Threading: Remove a level of indirection from Promise and Mailbox.
Makes using small copyable or POD objects in these more efficient, and if you want
to you can just put a pointer or smart pointer in there, which will
effectively do the same thing as the old setup.
2021-11-20 22:40:10 +01:00
Henrik Rydgård
20c3c8f291
Merge pull request #14848 from iota97/dpad-size-fix
Fix DPAD size calculation
2021-11-20 15:58:56 +01:00
Henrik Rydgård
420fde98ee
Merge pull request #15147 from stuken/libretro_content_close_crash_fix
Fix libretro crash on close content after cached GPU pointer cleanup.
2021-11-20 15:52:52 +01:00
Henrik Rydgård
25034fdc55
Merge pull request #15151 from iota97/chat-touch
Prevent chat menu touch to fall throght
2021-11-20 15:48:43 +01:00
Henrik Rydgård
98cd023cf9 On desktop, change an empty current directory to "/" on startup.
Just avoids some confusion.
2021-11-20 14:48:51 +01:00
iota97
c9deeae6f1 Prevent chat menu touch to fall throght 2021-11-19 16:12:26 +01:00