Commit graph

20034 commits

Author SHA1 Message Date
Henrik Rydgard
83d564f883 Fix a potential crash in SoftGpu (crash logs seem to point here) 2016-04-09 18:27:35 +02:00
Henrik Rydgård
0c1e7dcc18 Use the OS to clear the CPU cache instead of the gcc builtin. Experiment for the S7 issues. 2016-04-09 16:16:45 +02:00
Henrik Rydgard
62aaeb39b0 Vulkan texture cache: Remove the "replaceImages" path.
Images alloc is so fast, and we'd need to double buffer some images
anyway, better not to.
2016-04-09 10:30:23 +02:00
Henrik Rydgard
37616a6f95 Update the Vulkan validator workarounds to match the 1.0.8 validator... gah. 2016-04-07 23:45:38 +02:00
Henrik Rydgard
e1bf0d3f81 Update glslang, lang submodules 2016-04-07 23:30:45 +02:00
Henrik Rydgard
617bcebcd6 Update to latest vulkan header (1.0.8) 2016-04-07 22:53:37 +02:00
Henrik Rydgard
5cd3956575 Reformat VulkanContext.cpp (fix tab indentation) 2016-04-03 00:01:56 +02:00
Henrik Rydgard
e1f660ebc1 Update vulkan structure init to the new style 2016-04-02 23:57:23 +02:00
Henrik Rydgard
861a30a6cd Fix an assortment of minor resource leaks, make vulkan validator happier. 2016-04-02 11:06:39 +02:00
Henrik Rydgard
727058fc27 Remove an entry from GPUStats that didn't really belong. 2016-04-02 11:06:05 +02:00
Henrik Rydgard
ad0da06f65 Forgot to remove these from the debug string. 2016-04-02 10:36:51 +02:00
Henrik Rydgard
c1e9df0777 Adjust the displayed debug stats for each backend. Cleanup. 2016-03-31 10:23:40 +02:00
Henrik Rydgard
5ef608fa50 GPU stats: Have each backend format its own string. 2016-03-31 10:17:02 +02:00
Henrik Rydgard
004c8b0fca Make debug stats more compact. 2016-03-31 09:47:25 +02:00
Henrik Rydgård
00d60d0068 Merge pull request #8680 from hrydgard/vulkan-framebuffer
Vulkan framebuffer - First steps
2016-03-31 09:27:42 +02:00
Henrik Rydgard
718789b99d Some cleanup in framebuffer code. Don't set BlendColor dynstate unless we need it. 2016-03-31 09:23:17 +02:00
Henrik Rydgard
51f0e504b3 oops 2016-03-31 00:50:50 +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
Henrik Rydgard
c2b66a0882 Another leak fix, buildfix 2016-03-31 00:49:10 +02:00
Henrik Rydgard
2b996db298 Crash and leak fixes 2016-03-31 00:49:10 +02:00
Henrik Rydgard
9f918fd11b Start hooking up framebuffers to CopyDisplayToOutput 2016-03-31 00:49:10 +02:00
Henrik Rydgard
f52fd0c853 FramebufferVulkan: Fix DrawPixels 2016-03-31 00:49:10 +02:00
Henrik Rydgard
731af0d0b4 Add some infrastructure for 2D drawing, to be used by the Vulkan framebuffer manager 2016-03-31 00:49:10 +02:00
Henrik Rydgard
2e55ba345c Some comments 2016-03-31 00:49:10 +02:00
Henrik Rydgard
339daede56 Clean up, start building some scaffolding 2016-03-31 00:49:10 +02:00
Henrik Rydgard
e124962d15 Fix depth/stencil clears (already fixed in framebuffer branch) 2016-03-31 00:48:01 +02:00
Henrik Rydgard
c75e9a0990 Fix vertex pushbuffer allocation for games that use indexed drawing with the same base repeatedly. 2016-03-31 00:46:50 +02:00
Henrik Rydgard
e2b58a05a6 Buildfix 2016-03-28 21:35:16 +02:00
Henrik Rydgard
40d05e292c Cleanup in FramebufferVulkan to reduce the size of future diffs 2016-03-28 20:23:29 +02:00
Henrik Rydgard
0a8d74728a x86/64: Add a couple of more cases to very minor vertex skinning optimization 2016-03-28 18:40:23 +02:00
Henrik Rydgard
a8c386b94c Make VulkanImage a little more flexible (make it possible to create depth images)
Just preparation.
2016-03-28 18:25:05 +02:00
Henrik Rydgård
4ad0af4e6b Merge pull request #8676 from unknownbrackets/vulkan-minor
Fix a wrong assertion on exit and enable logic ops in Vulkan
2016-03-27 22:39:06 +02:00
Unknown W. Brackets
1aa8370f11 Vulkan: Use logic ops when available. 2016-03-27 12:39:01 -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
14363a22db Oops, one more typo.
This one didn't break anything, but better to be safe.
2016-03-27 09:26:34 -07:00
Unknown W. Brackets
048a12f589 Buildfix.
Some compilers didn't like that, oops.
2016-03-27 09:25:25 -07:00
Henrik Rydgård
59788d91a9 Merge pull request #8674 from unknownbrackets/vulkan-debug
Vulkan: Add some basic info for reporting
2016-03-27 18:18:13 +02:00
Unknown W. Brackets
4ae39d15e5 Vulkan: Add some basic info for reporting. 2016-03-27 08:52:55 -07:00
Henrik Rydgård
6fd0f308bd Merge pull request #8670 from unknownbrackets/vulkan-mem
Add and use a texture pool manager for Vulkan
2016-03-27 17:45:51 +02:00
Unknown W. Brackets
ed41785692 Vulkan: Add EndFrame to texture cache. 2016-03-27 08:33:22 -07:00
Unknown W. Brackets
3352608027 Vulkan: Free texture slabs on exit. 2016-03-27 08:30:43 -07:00
Unknown W. Brackets
16570f10bd Vulkan: Handle texture allocation failure.
Users hit out of memory even using desktop GL devices, and it will
definitely be possible on mobile and desktop Vulkan.
2016-03-27 08:30:42 -07:00
Unknown W. Brackets
27a5697a96 Vulkan: Use the slab allocator for textures. 2016-03-27 08:30:42 -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