Commit Graph
552 Commits
Author SHA1 Message Date
Unknown W. Brackets 954f93046f Vulkan: Keep state on Clear cmds when used later.
This also removes duplicate state - for example our UI has some duplicate
Scissor commands.
2018-05-03 07:18:40 -07:00
Henrik Rydgård 73d6446d72 Merge pull request #10997 from unknownbrackets/vulkan-clear
Vulkan: Discard draws immediately before clear
2018-05-03 09:23:17 +02:00
Unknown W. Brackets 844015b7f8 Vulkan: Discard draws immediately before clear.
Fixes #10163, a crash on Adreno when a clear is the last thing in a render pass.
2018-05-02 19:23:49 -07:00
Henrik Rydgård 92a46e9a08 Merge pull request #10984 from unknownbrackets/gl-screenshot
Fix GLES game screenshots
2018-04-29 19:32:03 +02:00
Unknown W. Brackets 170e871c54 thin3d: Report unsupported format conversion.
Better we know than ignore.
2018-04-29 10:23:53 -07:00
Unknown W. Brackets ae1bb20b7b GLES: Fix game screenshots. 2018-04-29 10:23:03 -07:00
Unknown W. Brackets a85e914f78 Vulkan: Fix use-after-free crash on shutdown. 2018-04-29 09:47:39 -07:00
Henrik Rydgård 03c2292ae9 Merge pull request #10915 from unknownbrackets/warnings
Warning fixes
2018-04-14 20:30:26 +02:00
Unknown W. Brackets 377b220fb3 GLES: GlPushBuffer was a little too friendly. 2018-04-14 11:00:13 -07:00
Henrik Rydgård 1987401e74 Fix glitch in MGS: Acid perf hack. yeah, slippery slope.. 2018-04-14 10:27:36 +02:00
Henrik Rydgård fb7a63bd11 Implement shader depal for GL as well, but disabled by default. 2018-04-13 20:00:14 +02:00
Henrik Rydgård 0ac6cea34d Add a queue processing hack for Sonic Rivals too. Now it's fast. 2018-04-13 18:05:04 +02:00
Henrik Rydgård 413a204138 Vulkan: Semi-gross hack that massively improves the perf of MGS2:Acid. 2018-04-13 17:32:56 +02:00
Henrik Rydgård f4d8bfdf18 Avoid some GL errors on older devices 2018-04-12 14:35:25 +02:00
Henrik Rydgård dd228be698 GL: Add a lot of conditional error checks (normally not enabled) 2018-04-12 14:35:04 +02:00
Henrik Rydgård 36fd2711d6 Revert "Remove further remains of hardware skinning."
This reverts commit 40db61a680.
2018-04-10 12:22:41 +02:00
Unknown W. Brackets 32eb483932 GLES: Defrag using deleter off render thread.
Moving it to the render thread was a bit more complex because of
localMemory.  Fixes #10859.
2018-04-08 19:22:46 -07:00
Unknown W. Brackets 99d16b2202 Vulkan: Add tags to UI textures too. 2018-04-06 21:43:18 -07:00
Henrik Rydgård ca0fb77080 Assorted cleanups. Don't assert on no clear mask. 2018-04-06 23:29:44 +02:00
Henrik Rydgård b06df3536e Auto unregister push buffer on deletion. 2018-04-05 17:53:03 +02:00
Henrik Rydgård c7eb259c0c Auto register new push buffers on creation 2018-04-05 17:50:37 +02:00
Henrik Rydgård 76138fee6d Move pushbuffer deletion to the render manager. 2018-04-05 17:47:08 +02:00
Henrik Rydgård feb3870f7d Also take control over Begin/End 2018-04-05 17:34:32 +02:00
Henrik Rydgård 8d6bbc54a9 Minor refactoring moving creation/deletion of GLPushBuffer to GLRenderManager 2018-04-05 17:31:12 +02:00
Unknown W. Brackets c6ef547176 GLES: Show post-shader compile errors to user. 2018-04-01 19:47:19 -07:00
Henrik Rydgård d160292f54 Include renderpass definition in Vulkan shader cache entries, should make it more effective again. 2018-03-29 14:36:04 +02:00
Henrik Rydgård 01d81ffa72 OpenGL: Fix texture wrapping of render targets. 2018-03-28 11:23:41 +02:00
Henrik Rydgård d125fa00e1 Make sure the renderpass cache hashmap is never accessed from the main thread at runtime. Should help #10811 2018-03-27 14:45:41 +02:00
aliaspider 808bf8e681 Libretro: add experimental D3D11 support. 2018-03-25 23:07:02 +01:00
aliaspider 54d9406713 fix mingw and msvc cmake builds. 2018-03-23 03:18:13 +01:00
aliaspider 15c4406df7 add missing inclues. 2018-03-22 22:14:19 +01:00
aliaspider a5b5308d88 fix return value / plug leak. 2018-03-22 22:12:19 +01:00
Henrik Rydgård f1359af0b0 Vulkan: Improve handling of shader compile failures (don't crash) 2018-03-19 17:46:58 +01:00
Henrik Rydgård 1dabccb453 Vulkan: Minor logic fixes in the transition elimination 2018-03-18 13:14:20 +01:00
Henrik Rydgård 3e7723ea6d Vulkan: Use finalLayout to optimize away barriers before framebuffer copies. 2018-03-18 12:09:02 +01:00
Henrik Rydgård 2d3655ea23 Vulkan: Get rid of more explicit barriers by merging the finalLayout color transitions into renderpasses. 2018-03-18 12:03:23 +01:00
Henrik Rydgård 6d5f0665fe Add a super focused workaround for the Mali bug, see #10723
Minimizes the performance penalty.
2018-03-18 11:20:45 +01:00
Henrik Rydgård f43935b030 Merge framebuffer layout pre-transitions into render pass subpass dependencies.
With this, drivers should be able to completely get rid of layout
transitions into render passes that use CLEAR, at least.
2018-03-18 09:55:36 +01:00
Henrik Rydgård 33a1e6a080 Vulkan Clear-renderpass merging: If a copy step is found that reads from the affected buffer, don't merge the clear into the later renderpass. 2018-03-18 09:44:00 +01:00
Henrik Rydgård 0ee058320a Pass new vulkan validation layers. Fix math in FindTransferFramebuffers. 2018-03-17 23:39:02 +01:00
Henrik Rydgård 6858c77612 Don't allow wrapping on framebuffer textures. Fixes GTA on old NV Shield 2018-03-17 01:54:11 +01:00
Henrik Rydgård 614cabb115 Implement pipeline/shader cache for Vulkan, to avoid shader compile stutters on second and subsequent runs.
The raw pipeline cache got pretty large. Instead, store IDs like GL.

There's still a disabled option to store the pipeline cache objects.
2018-03-16 21:03:03 +01:00
Henrik Rydgård c5ebb2d73f Oops, remove logging 2018-03-16 14:58:45 +01:00
Henrik Rydgård a08464eb77 Vulkan: Also check for empty clearing renderpasses later in the frame. 2018-03-16 14:57:41 +01:00
Henrik Rydgård df8dac4aae If the first renderpass is an empty clear, merge it into the next one that touches the same framebuffer. Works around #10723 in Wipeout. 2018-03-16 13:44:56 +01:00
Henrik Rydgård 3cd92b4d90 Vulkan: Add a (disabled) facility to force image layouts to GENERAL, for debugging barrier issues 2018-03-15 16:23:23 +01:00
Henrik Rydgård ba5208efaa GL: Fix bug where we could crash if a readback happened at the same time as a buffer expansion. 2018-03-14 00:06:38 +01:00
Henrik Rydgård 7c6034e2ce Merge pull request #10713 from hrydgard/windows-gl-vsync-fix
Fix VSync on Windows. Should fix #10711
2018-03-13 00:03:33 +01:00
Romain Graillot ad37e7ce45 Fix crash happening with glGetFloatv on GPDXD devices 2018-03-12 23:11:58 +01:00
Henrik Rydgård 2a438d6e03 Fix VSync on Windows. Should fix #10711 2018-03-12 20:07:31 +01:00