Henrik Rydgård
96d6f1cae5
Make sure the device supports transfers from swapchain images when taking screenshots.
2017-11-15 13:57:22 +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
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
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
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
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
330bdb8be8
Add and update some comments.
2017-11-01 08:42:49 +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
0a0494ef8e
It builds! With some shortcuts, of course.
2017-10-26 10:56:59 +02:00
Henrik Rydgård
5da165fad6
More work towards passing 1.61 Vulkan validation layers
2017-10-20 17:19:07 +02:00
Henrik Rydgård
d0b9e5ed8f
Initial work on passing the latest Vulkan validation checks.
2017-10-20 14:47:36 +02:00
Henrik Rydgård
55e9807a53
Separate VulkanContext::CreateDevice into ChooseDevice and CreateDevice to give an opportunity to enable extensions.
2017-08-28 14:12:56 +02:00
Henrik Rydgård
8c1bfb876f
Assorted cleanup of Vulkan init code. Show Vulkan extensions in system info.
2017-08-28 13:47:31 +02:00
Henrik Rydgård
750c124c33
Vulkan: Fix some inefficient command pool usage, might also fix a race condition
2017-08-18 17:09:48 +02:00
Henrik Rydgård
560eaa5390
Vulkan: Add code (disabled) to be able to run with more in-flight frames. Only improves performance marginally and needs more testing.
2017-08-17 17:57:37 +02:00
Henrik Rydgård
2c4e5e2303
Fastpath in fastrunloop when diff=0. Remove need for Execute for UV scale/offset.
2017-08-17 15:20:16 +02:00
Henrik Rydgård
c173da49d3
Fix a number of bugs and stuff affecting Vulkan on Mali
2017-05-30 09:36:17 +02:00
Henrik Rydgård
a7dd6d6085
Further steps towards Vulkan framebuffer support
2017-05-30 09:36:17 +02:00
Henrik Rydgard
4407445d50
Separate BeginFrame from BeginSurfaceRenderPass
2017-05-30 09:22:40 +02:00
Henrik Rydgard
5974e0ee6d
Work towards a clean vulkan shutdown.
2017-05-07 10:40:11 +02:00
Unknown W. Brackets
bf02f7d98b
Vulkan: Detect swapchain init failure.
...
This seems to be a driver bug, and occurs on NVIDIA when OpenGL has
previously been inited. Or we're not cleaning something up properly...
but there's a driver error logged to debug output.
2017-04-15 16:26:26 -07:00
Henrik Rydgård
405ac4f2cc
Merge pull request #9041 from unknownbrackets/vulkan
...
WIP: Progress toward device restore on Vulkan
2016-12-01 15:58:32 +01:00
Florent Castelli
70593d1004
android: Change preprocessor define to standard __ANDROID__
...
ANDROID is only standard to the old Makefile buildsystem, not the platform.
2016-10-12 11:14:09 +02:00
Unknown W. Brackets
39d6ea2985
Vulkan: Auto-set queued deletes to null.
2016-10-09 12:16:42 -07:00
Henrik Rydgard
5cd3956575
Reformat VulkanContext.cpp (fix tab indentation)
2016-04-03 00:01:56 +02:00
Henrik Rydgard
32f5930e15
Move clear handling to FramebufferVulkan, center the clear properly in non-buffered. more cleanup.
2016-03-31 00:50:50 +02:00
Unknown W. Brackets
9921fd2ea7
Vulkan: Don't bother with extra userdata, comments.
...
Was a failed attempt to avoid new/delete.
2016-03-27 08:30:40 -07:00
Unknown W. Brackets
973a9f6124
Vulkan: Delay frees for device memory slabs.
2016-03-27 08:30:38 -07:00
Henrik Rydgård
b0329e8106
Merge pull request #8657 from unknownbrackets/vulkan-resize
...
Support resizing the screen on Vulkan
2016-03-22 09:22:58 +01:00
Unknown W. Brackets
963b18e6c2
Vulkan: Prep for resize, destroy surface on exit.
...
I suppose this is a validation layer bug, it didn't report the leak.
2016-03-21 19:41:20 -07:00
Henrik Rydgard
b97e02febe
Typo fixes. Delete irrelevant comments
2016-03-21 20:23:53 +01:00
Henrik Rydgard
dff585e440
VulkanContext: Detect the appropriate depth buffer format to use, expose it.
...
This should help AMD compatibility.
2016-03-21 20:11:49 +01:00
Unknown W. Brackets
9c3e12ead0
Remove some unused things reported by clang.
2016-03-20 23:14:08 -07:00
Henrik Rydgard
5d45413dab
Fix a resource leak. Request COHERENT memory for pushbuffers.
2016-03-20 19:35:03 +01:00
Henrik Rydgard
5d56537a16
Move VulkanPushBuffer into VulkanMemory.h
2016-03-20 19:31:02 +01:00
Henrik Rydgard
da50370328
Split out VulkanTexture from VulkanContext.cpp/h into VulkanImage.cpp/h
2016-03-20 19:31:02 +01:00
Henrik Rydgard
e45c24b75f
Show how much pushbuffer space is used each frame.
...
Optimizing this number (by avoiding redundant UBO uploads etc) will probably help performance.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
84e649f74b
Vulkan: Enable mipmapping
2016-03-20 19:31:02 +01:00
Henrik Rydgard
8a62724316
Upload PSP textures through a push buffer instead of image copy. More flexible.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
5ea01ffff6
Add a secondary way to upload textures - through buffers.
2016-03-20 19:31:02 +01:00
Unknown W. Brackets
82205a4660
Handle Vulkan init errors more gracefully.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
5ca012e83d
Fix a bunch of new vulkan validation layer failures.
2016-03-20 19:31:02 +01:00
Unknown W. Brackets
c92790c5a8
Specify a useful app version when loading Vulkan.
2016-03-20 19:31:02 +01:00
Henrik Rydgård
9c457da4c9
Gets the Vulkan backend running, but not drawing correctly, on Android.
...
Not sure what's wrong, I get a yellow flashing screen.
2016-03-20 19:30:39 +01:00
Henrik Rydgard
d325aa2b30
Hook up Vulkan on Android, no idea if it works. Move VulkanContext to Common.
2016-03-20 19:30:11 +01:00