Commit Graph
42 Commits
Author SHA1 Message Date
Unknown W. Brackets 0e2a586c1b Global: Fix some type comparison/shadow warnings. 2018-02-11 07:03:23 -08:00
Henrik Rydgård c3629b4a53 Warning fixes 2018-02-04 13:42:04 +01:00
Henrik RydgårdandGitHub 22e28e218b Merge pull request #10411 from hrydgard/gl-render-manager
GL render manager - new faster GL multithreading
2018-01-31 12:22:07 +01:00
Henrik Rydgård c60c8ed68a Debug visualization for the Vulkan memory allocator. Shows some interesting behaviour. 2018-01-29 19:38:10 +01:00
Henrik Rydgård 2656ad7d40 Vulkan: Use push_back instead of resize(+1) 2018-01-27 15:10:17 +01:00
Henrik Rydgård 60a966c5ec PushBuffer added. Thin3d works now on top of GLRenderManager, except framebuffers. 2018-01-27 15:10:17 +01: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 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 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 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 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 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 4346a54eb7 Vulkan: Speed up and simplify hardware tesselation by using storage buffers. 2017-11-12 13:55: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 833916a906 A multitude of fixes. The UI now works correctly, though of course ingame still broken. 2017-10-26 10:56:59 +02:00
Henrik Rydgård 804aa79376 Various Vulkan image transition fixes and related 2017-10-20 18:09:05 +02:00
Henrik Rydgård 3757070fe2 Extra safety when switching GPU backends, fix possible Vulkan shutdown issue. Should help #10005 2017-10-09 12:17:54 +02:00
Henrik Rydgård 5e788ffadf Implement vertex caching for Vulkan. 2017-08-17 11:22:45 +02:00
Henrik Rydgard d4e1fc8d93 More vulkan shutdown fixes 2017-05-07 11:08:09 +02:00
Unknown W. Brackets a1f59deafe Fix some type narrowing warnings and typos. 2017-03-19 07:44:31 -07:00
Unknown W. Brackets 8dd93576ec Vulkan: Ignore queued frees after destroy.
We flush slabs so this gives false assertions in some cases.
2016-03-27 12:38:15 -07:00
Unknown W. Brackets 3352608027 Vulkan: Free texture slabs on exit. 2016-03-27 08:30:43 -07:00
Unknown W. Brackets 62b6432121 Vulkan: Allocate forwards in device slabs. 2016-03-27 08:30:41 -07:00
Unknown W. Brackets 87d65e696c Vulkan: Correct alloc near slab end. 2016-03-27 08:30:40 -07: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 bd7c431532 Vulkan: Increase new size for new slabs. 2016-03-27 08:30:39 -07:00
Unknown W. Brackets 973a9f6124 Vulkan: Delay frees for device memory slabs. 2016-03-27 08:30:38 -07:00
Unknown W. Brackets 7d5a8aa470 Vulkan: Protect better against memory alloc errors. 2016-03-27 08:30:38 -07:00
Unknown W. Brackets f0dc921ed5 Vulkan: Setup a pool memory manager for textures. 2016-03-27 08:30:37 -07:00
Unknown W. Brackets 6d947a057e Vulkan: Handle oversized push buf allocations. 2016-03-20 22:49:38 -07:00
Unknown W. Brackets 9fd040eed0 Vulkan: Cache only device in push buffers. 2016-03-20 22:49:38 -07:00
Unknown W. Brackets e3d9630b9a Vulkan: Handle oom slightly better. 2016-03-20 15:25:59 -07:00
Unknown W. Brackets 9e4389cbf5 Vulkan: Defrag buffers when growing. 2016-03-20 15:20:42 -07:00
Unknown W. Brackets f2513ffcd6 Vulkan: Allocate more buffers on overflow. 2016-03-20 15:15:13 -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