947 Commits

Author SHA1 Message Date
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
ca7a2d06ca Vulkan: Implement stencil upload (for Star Ocean). 2017-11-01 14:18:39 +01:00
Henrik Rydgård
6b904547b2 Complete a comment. 2017-11-01 08:57:31 +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
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
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
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
6e9cd933b2 Implement GetFramebufferAPITexture for Vulkan 2017-10-31 12:34:30 +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
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
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
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
Henrik Rydgård
54e4eab1c1 Warning fixes 2017-10-26 10:57:00 +02:00
Henrik Rydgård
613cc46285 Remove a bad check making us use the wrong way to copy depth buffers. Add a cap so we can try to unify BlitFramebufferDepth later. 2017-10-26 10:57:00 +02:00
Henrik Rydgård
12f8580984 Assorted fixes 2017-10-26 10:57:00 +02:00
Henrik Rydgård
85cb604a24 Fix (some) crashes on blits. Validation issues remain. 2017-10-26 10:57:00 +02:00
Henrik Rydgård
8639664a6a Warning fixes, CMakeLists.txt/Android.mk fixes 2017-10-26 10:57:00 +02:00
Henrik Rydgård
d016bfe221 Fix some resource leaks and excessive logging in VulkanRenderManager 2017-10-26 10:57:00 +02:00
Henrik Rydgård
c4f0afc8a2 Clean out some obsolete code 2017-10-26 10:57:00 +02:00
Henrik Rydgård
b5e06f3c7d VulkanRenderManager: BindPipeline should really be its own command. Tighten up some image transitions. 2017-10-26 10:57:00 +02:00
Henrik Rydgård
3e2b810c39 Improve synchronization, though there are very weird issues. Possibly need to run the swap chain from the thread that created it? 2017-10-26 10:57:00 +02:00
Henrik Rydgård
c403edfa89 Avoid re-binding pipelines. 2017-10-26 10:57:00 +02:00
Henrik Rydgård
72a41cd524 Let's try a mutex. Doesn't completely solve the problem though.. 2017-10-26 10:57:00 +02:00
Henrik Rydgård
d3672d9e57 Make sure not to begin and end the init command buffer on different threads. 2017-10-26 10:57:00 +02:00
Henrik Rydgård
48ac334f4f Vulkan: Don't forget to specify stencil load op in render passes 2017-10-26 10:57:00 +02:00
Henrik Rydgård
022657ebb3 This makes a little more sense, but still hangs (frameAvailable = true while stuck on condvar) 2017-10-26 10:56:59 +02:00
Henrik Rydgård
c788dc896a Synchronization is HARD. need a rethink, methinks. 2017-10-26 10:56:59 +02:00
Henrik Rydgård
1c5bd0f8dc Move the VulkanRenderManager stuff to thin3d, fits in better there. 2017-10-26 10:56:59 +02:00
Henrik Rydgård
02f76ae4a8 Rendering basics now works. 2017-10-26 10:56:59 +02:00
Henrik Rydgård
833916a906 A multitude of fixes. The UI now works correctly, though of course ingame still broken. 2017-10-26 10:56:59 +02:00
Henrik Rydgård
0a0494ef8e It builds! With some shortcuts, of course. 2017-10-26 10:56:59 +02:00
Henrik Rydgård
417b96a1b0 Use RenderManager for thin3d stuff 2017-10-26 10:56:59 +02:00
Henrik Rydgård
84ed793adf Initial work on render queue manager 2017-10-26 10:56:59 +02:00
Henrik Rydgård
7b1e1cd5e0 Automatically scroll textboxes when the caret ends up outside. Fixes #10026 .
There was some code for this before but it didn't work.
2017-10-24 23:05:21 +02:00
Henrik Rydgård
d1d1e1f742 Fix issue with caret position in text boxes caused by a bad hash function. Fletcher is 2-bytes-at-a-time and thus very inappropriate for short strings. 2017-10-24 22:45:27 +02:00