783 Commits
Author SHA1 Message Date
Henrik Rydgård 45308a16c0 Vulkan is strict about scissor rect, so let's clamp centrally.
Better than spreading the logic all over.

Fixes #15207
2021-12-08 22:38:01 +01:00
Henrik Rydgård a2f9f68565 Vulkan: More scissor dimension checks. See #15207 2021-12-07 21:46:10 +01:00
Henrik Rydgård 466a731ece Detect and specify the max available Vulkan version, up to 1.2. 2021-12-07 21:26:14 +01:00
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