Commit Graph
80 Commits
Author SHA1 Message Date
Unknown W. Brackets 212669d2bc Vulkan: Cleanup pipeline var shadowing. 2021-12-02 17:57:40 -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 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 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 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 60bd25582c Vulkan: Remove wide line handling.
No longer used, since we convert lines to triangles now.
2021-10-31 14:47:21 -07:00
Unknown W. Brackets 1d76e55f84 Vulkan: Disable large points feature.
No longer used.
2021-10-31 13:07:03 -07:00
Henrik Rydgård 593241b50f Merge pull request #14996 from hrydgard/vulkan-best-practices
Vulkan "best practices" fixes
2021-10-19 17:57:39 +02:00
Unknown W. Brackets 7b00c4a572 GPU: Move Z/W equal hack to bugs from supports.
It's really a bug (might even ideally cap the version?), and we already
have other bugs handled the same way.
2021-10-12 20:34:44 -07:00
Unknown W. Brackets 5e6f54033e GPU: Split clip and cull caps.
GL_ARB_cull_distance is needed, sometimes available on older GL.
2021-10-12 20:34:43 -07:00
Unknown W. Brackets 046a5c548b GLES: Check clip/cull distance support.
Pretty limited on GLES3+.  Also D3D11.
Seems like doing it on D3D9 might be a bit tricky.
2021-10-12 20:34:42 -07:00
Unknown W. Brackets 273b9a3dc1 Vulkan: Add negative Z clipping. 2021-10-12 20:34:42 -07:00
Henrik Rydgård e6857388c7 Add input device debug info to touchscreen test screen
(yeah maybe there's a better place but it's fine).

Also make a slight tweak to the detection order which I don't think
matters much.
2021-10-10 11:50:20 +02:00
Henrik Rydgård d7ac6aa63d Fix an assortment of minor VK barrier bugs in mostly texture upload 2021-10-08 21:58:03 +02:00
Henrik Rydgård 90335bd520 Mip generation: Transition the correct mipmap after blit. 2021-10-08 21:53:55 +02:00
Henrik Rydgård b426d12a17 More best-practices adjustments 2021-10-08 21:32:40 +02:00
Henrik Rydgård d7774bf1ae Ran the "Vulkan best practices" layer, fixed some stuff. 2021-10-08 21:20:40 +02:00
Henrik Rydgård f9f9ab5ec6 Merge pull request #14978 from unknownbrackets/draw-vulkan
Vulkan: Handle desc set allocation failure better
2021-10-07 08:48:59 +02:00
Unknown W. Brackets e389dfc711 Vulkan: Handle desc set allocation failure better. 2021-10-06 23:20:13 -07:00
Henrik Rydgård 59ac4d3e27 Vulkan: Rework mipmap generation and its image barrier/layout handling.
Fixes bugs on mobile with texture scaling + auto max quality texturing
(since that generates mipmaps with blits from an image which was just generated from
compute, making proper barriers very critical).
2021-10-05 22:50:49 +02:00
Henrik Rydgård 46ada8649c VK mip gen: Could end up with a zero dimension in the lowest mipmap, prevent that.
Should help #14814
2021-09-11 13:13:40 +02:00
Unknown W. Brackets d264cbef32 Vulkan: MSVC 2017 buildfix.
Fixes the buildbot.
2021-09-10 23:35:31 -07:00
Henrik Rydgård 5876388c65 Vulkan scissor fix (validation errors). 2021-09-10 01:15:29 +02:00
Bram Verweij f1f5fbd3bb Remove unintended whitespace changes 2021-08-21 12:44:25 +02:00
Bram Verweij a31cbe42d2 Rename namespace to PPSSPP_VK, remove indentation 2021-08-21 12:39:15 +02:00
Bram Verweij cc00a4132d Prevent dlopen collisions between ppsspp_libretro.so and libvulkan.so 2021-08-20 11:22:57 +02:00
Henrik Rydgård 43ae32e5b8 Merge pull request #14713 from amverweij/vulkan-display-khr
First pass on using Display KHR, needs proper init flags
2021-08-11 01:34:38 +02:00
Unknown W. Brackets 4cb6976029 GPU: Use an empty vertex buf for reinterpret.
See #14552.
2021-08-07 22:22:36 -07:00
Henrik Rydgård 3595e092c9 Turn off all 16-bit formats if B5G6R5 format is not available.
Works around #14602 for now.
2021-07-10 23:33:46 +02:00
Unknown W. Brackets 44d2d8a2a3 Draw: Assert sampler bindings are in valid ranges. 2021-06-12 10:10:42 -07:00
Henrik Rydgård f4a6d291e1 Common: Capitalize setCurrentThreadName(). 2021-04-30 23:02:36 -07:00
Unknown W. Brackets 5119d79082 Build: Remove IOS define. 2021-03-02 21:04:03 -08:00
Unknown W. Brackets 13ec384dbe Build: Explicitly include ppsspp_config.h.
This adds it to all files that use it.  Not all our builds include the
file.
2021-03-02 21:04:03 -08:00
Unknown W. Brackets e7a3faaa8c Windows: Stop ignoring all deprecated warnings. 2021-02-18 08:56:36 -08:00
Unknown W. Brackets fe9870bf37 Draw: Auto ref/release bound textures/samplers. 2021-02-16 21:48:43 -08:00
Unknown W. Brackets e85a8b0f5b Global: Cleanup class init order warnings. 2021-02-15 11:59:45 -08:00
Unknown W. Brackets f32f89dd90 Global: Remove some unused variables. 2021-02-15 11:59:45 -08:00
Henrik Rydgård 9b13220f49 Merge pull request #13864 from unknownbrackets/vulkan-amd
Vulkan: Remove #10097 hack for newer AMD drivers
2021-02-15 16:31:49 +01:00
Henrik Rydgård c8dfa091fa Add some checks trying to prevent creation of 0 sized textures.
Saw a crash log with a driver crash in CreateTexture...
2021-02-13 11:33:15 +01:00
Henrik Rydgård c48bdf7efc Vulkan: Fix image layout issues after compute shader uploads.
We're already in GENERAL so probably not worth to transfer to DST just
to do even more transfers due to the silliness of GenerateMip.

I'm planning to rework the whole texture upload thing to be far more
optimal with some kind of TextureUploadManager

Fixes #13987
2021-01-30 23:09:42 +01:00
Henrik Rydgård c251d69eab Minimize the Adreno shader compiler bug repro test 2021-01-30 10:21:14 +01:00
Unknown W. Brackets 6ca9acf94b Vulkan: Delete only created swapchain images.
We do other null checks here, same reason.  Create may have failed.
2021-01-16 20:55:34 -08:00