Commit Graph
1362 Commits
Author SHA1 Message Date
Greg V 52234dae91 Remove VULKAN_STATIC 2017-12-26 16:09:31 +03:00
Greg V f3783bdb44 Add support for Vulkan on Wayland 2017-12-26 16:09:27 +03:00
Unknown W. Brackets a7b3a1eb96 Vulkan: Decimate the texture allocator.
Thin3D wasn't calling Begin/End, which lead to leaks eventually and OOM.

Was causing softgpu to crash.
2017-12-24 10:39:42 -08:00
Henrik Rydgård 7f758d52dc Statically link a vulkan loader on Linux. Use to to init vulkan on X11. Unfortunately, it's broken. 2017-12-21 11:02:11 +01:00
Henrik Rydgård ea387b2a48 WIP vulkan on linux stuff 2017-12-21 10:48:00 +01:00
Henrik Rydgård b0528f3794 Vulkan: Fix bug where we'd do the initial layout transition for an image before binding memory to it. Should help the issue uncovered in #10413 2017-12-20 16:40:09 +01:00
Henrik Rydgård 2250ef799c Avoid including platform-specific headers in VulkanContext.h 2017-12-18 12:54:25 +01:00
Henrik Rydgård ef66892f70 Update vulkan headers, add linux .so loader lib for easy builds, like Sascha does. 2017-12-15 16:40:38 +01:00
Henrik Rydgård e488227398 Just some log cleanup 2017-12-15 16:33:49 +01:00
Henrik Rydgård b4a44c5e02 Another buildfix, sigh. Also extend the safe region a little bit to the thing from a couple commits ago. 2017-12-13 22:28:30 +01:00
Henrik Rydgård d2fe5abb84 Add a tiny bit of safety margin to the RipAccessible check. Should be enough for 128-bit SSE data. 2017-12-13 22:00:59 +01:00
Henrik Rydgård aaba38259a Oops, buildfix 2017-12-13 20:51:17 +01:00
Henrik Rydgård 6f0b382d9e Move vulkan debug callback out from WindowsVulkanContext into a file that can be shared with other platforms later. 2017-12-13 19:29:42 +01:00
Henrik Rydgård cca4e0b2ca Fix another case where we trusted std::move to clear the origin, which is not guaranteed. 2017-12-10 14:37:28 +01:00
Henrik Rydgård 91b089d90d Tweak logging and asserts in VulkanDeviceMemory::Destroy 2017-12-10 14:22:35 +01:00
Henrik Rydgård e07861991b Apply a fix to the ARM64 emitter ported over from Dolphin 2017-12-10 02:05:25 +01:00
Henrik Rydgård bd40479224 Vulkan: Add facility to auto-generate mipmap levels. Not yet used.
Intended for replacement textures and optional quality improvements
later.
2017-12-07 09:28:18 +01:00
Henrik Rydgård 2ebae034a4 Vulkan: Show samplers in "shader debug" 2017-12-07 09:28:18 +01:00
Henrik Rydgård aa0cc6712f Clip block transfer destinations. Should fix crash in #10011. Stats: Invent some sort of usage metric for device memory allocators. 2017-12-03 15:00:25 +01:00
Henrik Rydgård 6a2f0f4191 Revert "Fix memory-scan bug in VulkanDeviceAllocator that probably causes some fragmentation."
This reverts commit ac6b491287.
2017-12-03 11:31:25 +01:00
Henrik Rydgård ac6b491287 Fix memory-scan bug in VulkanDeviceAllocator that probably causes some fragmentation. 2017-12-03 11:10:40 +01:00
Henrik Rydgård 1bf44b7ca3 Shutdown fix. 2017-12-03 11:02:49 +01:00
Henrik Rydgård 6abdbde47e Fix bugs in VulkanImage allocator support 2017-12-03 10:50:25 +01:00
Henrik Rydgård 5d53f5e24c Add another assert, which gets hit.. Hm. Something is wrong.. 2017-12-03 10:42:19 +01:00
Henrik Rydgård ff264efe7e Change some Crash() to asserts in VulkanDeviceAllocator 2017-12-03 10:35:34 +01:00
Henrik Rydgård d0c248368d Use a VulkanDeviceAllocator for thin3d textures. Many devices have a hard limit on the total number of allocs and it's unnecessary to have the UI put pressure on that. 2017-12-03 10:29:41 +01:00
Unknown W. Brackets 8a58bf6596 Hashmaps: Another cleanup. 2017-12-02 11:55:54 -08:00
Unknown W. Brackets 668b17febf Hashmaps: Reset count on clear. 2017-12-02 10:45:46 -08:00
Unknown W. Brackets bbb4987cc0 Hashmaps: Reset state when growing.
std::move() is by no means guaranteed to clear.
2017-12-02 09:47:15 -08:00
Unknown W. Brackets e9a7bda2d5 Hashmaps: Change some crashes to asserts.
Silence is not golden.
2017-12-02 09:46:48 -08:00
LunaMoo 95a14ca830 Add hotkey to toggle audio and video dumping together in sync. 2017-12-01 23:48:58 +01:00
Henrik Rydgård 4129459495 Avoid an assert in ARM64 emitter, seen in Google Play crash logs 2017-11-29 21:31:42 +01:00
Henrik Rydgård 04913be779 Move pushbuffer map/unmap to the .cpp file to avoid inlining (for stack traces) 2017-11-29 20:13:38 +01:00
Henrik RydgårdandGitHub dc3363e885 Merge pull request #10185 from jbeich/bsd
Minor BSD fixes
2017-11-26 23:38:24 +01:00
Henrik Rydgård b9bad7431a Add ability to simulate a few kinds of Vulkan initialization failures, to test the GL fallback. 2017-11-26 16:13:04 +01:00
Unknown W. Brackets bd1ed897cf Global: Fix some warnings. 2017-11-25 14:08:49 -08:00
Unknown W. Brackets 9eccea2d5e Windows: Fix error formatting with % signs. 2017-11-25 12:00:14 -08:00
Jan Beich 7a16cff6de Common: implement GetExeDirectory on NetBSD 2017-11-24 14:46:07 +00:00
Henrik Rydgård cc3ba1bbf7 Fix _assert_ on Android to assert properly 2017-11-24 13:52:53 +01:00
Henrik Rydgård b6911d2764 Add a hidden debug option [Graphics]GfxDebugSplitSubmit to try to narrow down some Vulkan issues, see #10163. Also improve some asserts. 2017-11-22 10:47:04 +01:00
Henrik Rydgård acdb89c898 Make our release mode asserts actually fire properly in release mode again... 2017-11-21 21:06:57 +01:00
Henrik Rydgård 2e9d59ad10 Android: Use __android_log_assert facility to get pretty message-asserts into crash dumps. 2017-11-21 18:06:26 +01:00
Henrik Rydgård 27a60f5e58 Fix message asserts on Android. Add more of them to check things in Vulkan code. 2017-11-20 12:11:47 +01:00
Henrik Rydgård 96d6f1cae5 Make sure the device supports transfers from swapchain images when taking screenshots. 2017-11-15 13:57:22 +01:00
Henrik Rydgård 10792cc8e7 Windows/Vulkan: implement screenshots. Something is iffy with the red/blue swap though... 2017-11-15 13:18:29 +01:00
Henrik Rydgård 3594623a8d Vulkan: Show the preferred depth-stencil format in the feature list. 2017-11-15 09:08:30 +01:00
Unknown W. Brackets b1554ef061 Vulkan: Cut down on asserts during init.
In case something is horribly wrong, or our desired settings aren't
compatible, let's try to stumble our way out.

More things can fail, but the goal is to detect failure or at least be
able to render UI settings to swap out of Vulkan.
2017-11-12 21:56:55 -08:00
Henrik Rydgård 4346a54eb7 Vulkan: Speed up and simplify hardware tesselation by using storage buffers. 2017-11-12 13:55:42 +01:00
Henrik Rydgård ebac0143e0 Vulkan: Use a device allocator for tesselation data textures. Add comment about better solutions. 2017-11-12 10:28:55 +01:00
Henrik Rydgård 8d7bcd9d61 Vulkan hw tess: Assorted minor fixes. Works on Mali now. 2017-11-11 21:51:05 +01:00