Henrik Rydgard
f38a6650b1
VK code cleanup: Just a little helper for handling dedicated allocation for images.
2019-02-07 14:56:29 +01:00
Henrik Rydgard
e30daa8027
Remove unused API, assorted cleanup.
...
No longer enable the geometry shader feature, no plans to use it.
2019-02-05 21:31:43 +01:00
Henrik Rydgard
478b0b4278
Further improve VK extension loading. Switch to VK_EXT_debug_utils (but fallback to VK_EXT_debug_report if only that is available).
2019-02-05 21:31:38 +01:00
Henrik Rydgard
7ae6ba9d91
Add code to enable a couple more extensions I anticipate using eventually.
2019-02-05 18:07:18 +01:00
Henrik Rydgard
8e1a5ef3d6
Minor refactor of physical device property/feature detection, to allow for more extension use.
2019-02-05 18:07:17 +01:00
Henrik Rydgard
fdd0d7acb4
More Vulkan validation fixes
...
NVIDIA no longer uses nVidia capitalization.
2019-02-05 18:07:11 +01:00
Henrik Rydgard
b143e47fb6
VK: Load the dedicated allocation extension properly (but don't use it yet).
2019-01-31 14:18:30 +01:00
Henrik Rydgard
f339a0c15b
VK: Minor cleanup, turn off unfinished and probably wrong use of dedicated allocation feature
2019-01-31 14:09:21 +01:00
Henrik Rydgård
7ccf23542d
Fix SDL build
2019-01-26 12:03:20 +01:00
Henrik Rydgard
3fd216ad3a
Better handling of swap chain size, add PowerVR hack. Fixes #11743
2019-01-25 20:19:55 +01:00
Henrik Rydgard
c38c5469c4
Fixes for issues found by Vulkan validation layers, including a common non-harmful perf warning (doesn't fix all cases, but does fix the most common one).
2019-01-25 20:18:56 +01:00
Henrik Rydgård
46585a5da9
Additional logging
2019-01-23 18:34:25 +01:00
Henrik Rydgård
b282d83258
Revert 6fd1c0e3d and eba6c00 which experimentally disabled dual src on Adreno.
...
I don't think we have any indications that it doesn't work.
2018-12-10 23:48:28 +01:00
Henrik Rydgård
6fd1c0e3d9
Instead of the last commit, don't enable the dual src extension at all on Adreno.
...
This reverts commit eba6c00a8a .
2018-10-07 12:19:11 +02:00
weihuoya
9324d7c386
glslang options for vulkan
2018-08-30 22:51:55 +08:00
Unknown W. Brackets
e4127890ec
Vulkan: Fix some missing switch warnings.
...
Might as well prefer a virtual GPU over a CPU maybe...
2018-06-17 11:30:22 -07:00
Henrik Rydgård
b037efdb55
If there are multiple Vulkan devices, show a setting to allow the user to choose.
2018-06-06 10:20:12 +02:00
aliaspider
ed12b95091
Windows/Vulkan: use the width and height arguments in ReinitSurface when
...
provided.
2018-03-24 11:09:55 +01:00
aliaspider
8fcf93e462
vulkan: perform delete callbacks first since they can also queue
...
deletes.
2018-03-22 22:23:28 +01:00
Henrik Rydgård
08c3e13517
Do more detailed checks for Vulkan availability. Should hopefully solve #10729 .
2018-03-17 11:36:16 +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
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
9f9903c02e
Fixes to vulkan restart logic on Android. Should help #10696
2018-03-11 17:14:11 +01:00
Henrik Rydgård
eb014e8c6b
Try to be more consistent when initializing vulkan structs.
2018-02-25 12:15:29 +01:00
Henrik Rydgård
57615344e4
Fix for deletes, add some debugging stuff
2018-01-27 15:10:17 +01:00
Henrik Rydgård
133bef575a
Split Android graphics context implementations into their own files.
2018-01-20 21:47:16 +01:00
Greg V
025c382b9b
Check for Vulkan Xlib/Wayland surface support before enabling
...
The Vulkan loader will error if a requested extension is not available,
and the nvidia proprietary driver does not support the Wayland one.
2018-01-12 22:18:58 +03:00
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
191c4ddb0d
Add a bit of logging to try to figure out #10477
2017-12-30 21:04:05 +01:00
Greg V
f3783bdb44
Add support for Vulkan on Wayland
2017-12-26 16:09:27 +03: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
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
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
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
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
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
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