Commit Graph
22831 Commits
Author SHA1 Message Date
Unknown W. Brackets ec0f640f56 Vulkan: Trigger condvar only at frame end. 2017-11-04 21:10:33 -07:00
Unknown W. Brackets 8edc6eaf5e Vulkan: Fix segfault on swapchain fail.
This at least allows us to detect that the backend failed to init.

Happens when switching backends with debugger attached (probably driver
bug?)
2017-11-04 20:45:08 -07:00
Henrik Rydgård 9e65ae1cef Fix issue in framebuffer size calculation when viewport is bogus in through mode. Fixes #10043. 2017-11-04 11:43:19 +01:00
Henrik Rydgård d5f8d484dd Tiny cleanups. 2017-11-04 10:08:53 +01:00
Henrik Rydgård b9443e54e3 Vulkan: Minor fixes. 2017-11-03 00:03:35 +01:00
Henrik Rydgård 8d0209c7e4 Stop leaking framebuffers on shutdown. Fix other shutdown issues. 2017-11-01 21:43:08 +01:00
Henrik Rydgård 0e5b398c9d Minor optimization. 2017-11-01 21:43:08 +01:00
Henrik Rydgård b9d990ab02 Merge pull request #10042 from hrydgard/vulkan-stencil
Vulkan: Implement stencil upload (for Star Ocean).
2017-11-01 16:16:45 +01:00
Henrik Rydgård 5018e400f2 Remove some code duplication 2017-11-01 14:51:15 +01:00
Henrik Rydgård 41089ca284 Small fix for a bad block transfer in Soul Calibur 2017-11-01 14:43:00 +01:00
Henrik Rydgård ca7a2d06ca Vulkan: Implement stencil upload (for Star Ocean). 2017-11-01 14:18:39 +01:00
Henrik Rydgård 533f80a056 Fix bug in Vulkan's vertex shader generator, causing stretched characters in Jeanne D'arc. 2017-11-01 11:47:05 +01:00
Henrik Rydgård 94b16bf097 DenseHashMap: Speed up clearing. Became more important since I had to disable keeping descriptor sets around between frames. 2017-11-01 10:09:16 +01:00
Henrik Rydgård 6d20aea340 Merge pull request #10041 from hrydgard/vulkan-cleanups
Additional Vulkan fixes and cleanups
2017-11-01 09:30:34 +01:00
Henrik Rydgård 6b904547b2 Complete a comment. 2017-11-01 08:57:31 +01:00
Henrik Rydgård d92d78f54e Vulkan: Fix colors for low-bpp depal (actually fixing the shadows of ff-type0) 2017-11-01 08:49:49 +01:00
Henrik Rydgård 96cd368878 Make VulkanTexture "immutable". 2017-11-01 08:49:48 +01:00
Henrik Rydgård d0f328213a Add some disabled code to submit "init" command buffers separately to the queue for debugging. 2017-11-01 08:49:42 +01:00
Henrik Rydgård 700d6d10f4 Always recreate DrawPixelsTex to avoid inter-frame races. 2017-11-01 08:48:06 +01:00
Henrik Rydgård 6a8f72a327 Use the global curFrame counter. No need for a vector for pushing cmdbufs. 2017-11-01 08:47:50 +01:00
Henrik Rydgård 90d4296a6a Add a QueueRunner logging facility. Set up a subpass dependency for the backbuffer pass. 2017-11-01 08:45:14 +01:00
Henrik Rydgård 330bdb8be8 Add and update some comments. 2017-11-01 08:42:49 +01:00
Henrik Rydgård 74861d2d73 Vulkan: Make backbuffer transitions part of backbuffer render pass. Optimize depth buffer memory operations. 2017-11-01 08:42:49 +01:00
Henrik Rydgård 9e734b3791 Decimate descriptors every frame until I find a better solution. Fixes flicker in videos in several games. 2017-11-01 08:42:48 +01:00
Henrik Rydgård 980e1734c2 Merge pull request #10038 from hrydgard/vulkan-depal
Vulkan: Implement framebuffer "depal" (palette lookup) and shader blending
2017-10-31 19:01:05 +01:00
Henrik Rydgård bbfc32f131 Remove disabling of validation warning. It works. 2017-10-31 12:57:27 +01:00
Henrik Rydgård ed2731d197 Vulkan: Fix depal and shader blending. 2017-10-31 12:35:00 +01:00
Henrik Rydgård 07dfda0633 Vulkan depal code now passes validation, but produces black. 2017-10-31 12:35:00 +01:00
Henrik Rydgård 3f503ca297 Implement the rest of Vulkan framebuffer depal. Not yet working though. 2017-10-31 12:34:59 +01:00
Henrik Rydgård 65e23bb9f3 Some reorganization. Start implementing framebuffer depal for Vulkan. 2017-10-31 12:34:31 +01:00
Henrik Rydgård 6253280fba Delete superfluous bind of temporary render target on creation. 2017-10-31 12:34:31 +01:00
Henrik Rydgård 6e9cd933b2 Implement GetFramebufferAPITexture for Vulkan 2017-10-31 12:34:30 +01:00
Henrik Rydgård 0c7ae95df5 Merge pull request #10037 from hrydgard/vulkan-sync-readback
Vulkan: Implement synchronous framebuffer readback
2017-10-29 17:08:15 +01:00
Henrik Rydgård 97dced543e Share the conversion code between vulkan and D3D, fixing the missing format thing. 2017-10-29 14:42:51 +01:00
Henrik Rydgård 93c785b76d Color-convert directly during the readback, saves a copy. Like we already do in D3D11. 2017-10-29 10:56:36 +01:00
Henrik Rydgård 9c254ea1c3 Revert most of the last commit - will do it differently. 2017-10-29 09:31:28 +01:00
Henrik Rydgård a9f01c45e0 Use the CPU color conversion from GLES for readbacks in Vulkan (and D3D11). Fix bug. 2017-10-28 19:20:46 +02:00
Henrik Rydgård 34b65c0ca9 Fix Vulkan framebuffer readbacks, as long as they're in R8G8B8A8. 2017-10-28 18:41:54 +02:00
Henrik Rydgård b98d4e5c9d Vulkan: Rough untested implementation of synchronous readbacks. 2017-10-28 18:03:27 +02:00
Henrik Rydgård 717ec2387b VulkanRenderManager: Split out BeginFrame and EndFrame from Run 2017-10-28 16:47:08 +02:00
Henrik Rydgård 872b0307e6 Merge pull request #10035 from hrydgard/split-vulkan-rendermanager
Refactor: Split out VulkanQueueRunner from VulkanRenderManager
2017-10-28 11:11:29 +02:00
Henrik Rydgård 962ada1700 Comment cleanup 2017-10-28 00:37:06 +02:00
Henrik Rydgård 3f918ed328 Refactor: Split out VulkanQueueRunner from VulkanRenderManager
Should be no functionality change, but good to do before adding more
functionality.
2017-10-27 22:11:01 +02:00
Henrik Rydgård fa81dd9c44 Forgot to update the Android target version here to 26. 2017-10-27 01:26:27 +02:00
Henrik Rydgård f0a73353b0 Merge pull request #10033 from hrydgard/vulkan-queue-manager
VulkanRenderManager - big refactoring of the Vulkan code
2017-10-26 13:00:59 +02:00
Henrik Rydgård 1e9984dbf6 Another buildfix 2017-10-26 13:00:27 +02:00
Henrik Rydgård 5456194a69 Fix integer overflow affecting very large draw calls 2017-10-26 12:28:36 +02:00
Henrik Rydgård 7312576239 More buildfixes, warning fix, memory leak fix 2017-10-26 11:43:22 +02:00
Henrik Rydgård ecad09d18f 32-bit android buildfix attempt 2017-10-26 10:57:01 +02:00
Henrik Rydgård 07e8b4ff1a Bump descriptor set limits, which became insufficient with the addition of tesselation (should really use separate big desc layouts for them) 2017-10-26 10:57:01 +02:00