Henrik Rydgård
b9726245ac
Vulkan: Use VK_KHR_DEDICATED_ALLOCATION for frame buffers for minor speedup on some GPUs. Check for the debug report extension before enabling it.
2017-12-30 21:31:43 +01:00
Henrik Rydgård
25a9573f8b
Typo fix
2017-12-30 21:30:31 +01:00
Henrik Rydgård
191c4ddb0d
Add a bit of logging to try to figure out #10477
2017-12-30 21:04:05 +01:00
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
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
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
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
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
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å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
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
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
Henrik Rydgård
ee768ca949
Logging improvements, avoid resetting the Android text drawer unnecessarily
2017-11-10 13:02:24 +01:00
Henrik Rydgård
0a2b20bf59
More logging and tweaking
2017-11-10 12:09:42 +01:00
Henrik Rydgård
8b42d83123
Vulkan: Remove duplicate depalShaderCache, fix a number of instances where we didn't use the deleter properly.
...
Plus more logging, of course.
2017-11-09 17:25:37 +01:00
Henrik Rydgård
ec504756e0
Vulkan: Improve init/shutdown logging on Android. Fix a bug where we'd not run InitDeviceObjects on GPU_Vulkan sometimes.
2017-11-09 16:02:05 +01:00
Henrik Rydgård
845b02a6c5
Ooops
2017-11-09 13:35:42 +01:00
Henrik Rydgård
25f32b1d78
Vulkan: Disable dual source blending on Intel GPUs, fixes #10074 .
2017-11-09 13:16:06 +01:00
Henrik Rydgård
ba846fdbc5
Show textual names of Vulkan GPU vendors
2017-11-09 12:30:07 +01:00
Henrik Rydgård
c6c90d4cbc
Improve Vulkan device selection mechanism to prefer discrete GPUs
2017-11-09 12:21:20 +01:00
Henrik Rydgård
ca3be1877e
Vulkan: Apply simple workaround for Mali driver bug (see #10070 ), and minor cleanup.
2017-11-08 17:03:27 +01:00
Henrik Rydgård
70c70b1e76
Vulkan: Some error handling improvement. Might get us a clue for #10065
2017-11-07 00:08:39 +01:00
Unknown W. Brackets
fc32a7b24e
Vulkan: Show textures in GE debugger.
2017-11-06 00:29:01 -08: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
96cd368878
Make VulkanTexture "immutable".
2017-11-01 08:49:48 +01:00