Commit Graph
9567 Commits
Author SHA1 Message Date
Henrik Rydgard e611915a52 Rename some GPU classes and enums to fix some consistency issues between the backends. 2016-04-10 10:21:48 +02:00
Unknown W. Brackets c0660c5ee7 Simplify some repeated code patterns a bit.
Doesn't save many lines of actual code, though...
2016-04-09 22:25:10 -07:00
Unknown W. Brackets 555c76d439 Use bernstein for texcoord interpolation too.
This also closely matches hardware.
2016-04-09 22:14:15 -07:00
Unknown W. Brackets 2314a0f0ee Update note per hardware testing. 2016-04-09 21:46:50 -07:00
Unknown W. Brackets 2bafba3909 Interpolate bezier patch colors using bernstein.
This closely matches hardware (some color values seem to be off by one.)

See #7525.
2016-04-09 21:41:49 -07:00
Unknown W. Brackets 59d9524308 Switch bernsteins to use sse-friendly Vec3f. 2016-04-09 21:10:52 -07:00
Henrik Rydgård 55b8dc1261 Merge pull request #8685 from unknownbrackets/gpu-fetch
Allow shader framebuffer fetch on GLES3 only
2016-04-09 22:29:41 +02:00
Unknown W. Brackets 3db8f7d320 Allow shader framebuffer fetch on GLES3 only.
Note: before we did not support it properly on GLES3 devices.
2016-04-09 12:08:43 -07:00
Henrik Rydgard 83d564f883 Fix a potential crash in SoftGpu (crash logs seem to point here) 2016-04-09 18:27:35 +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 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 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
Unknown W. Brackets 1aa8370f11 Vulkan: Use logic ops when available. 2016-03-27 12:39:01 -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
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
Henrik Rydgård b877cb0807 Merge pull request #8669 from unknownbrackets/vulkan-tex
Use out/outPitch for remaining formats in Vulkan
2016-03-27 10:22:32 +02:00
Unknown W. Brackets b4406957c9 Halve the default tex buf size.
Might as well not allocate 2.5 MB that most of the time won't be needed.

If it becomes needed, it'll allocate at runtime, but this should be
uncommon.
2016-03-26 23:38:51 -07:00
Unknown W. Brackets d2f85792ab Vulkan: Unswizzle non-CLUT textures directly. 2016-03-26 23:38:51 -07:00
Unknown W. Brackets 1300631e9a Allow unswizzling with a dest pitch. 2016-03-26 23:38:50 -07:00
Unknown W. Brackets 3593a7963e Cleanup and clarify texture swizzling funcs. 2016-03-26 21:55:32 -07:00
Unknown W. Brackets b1a2a44377 Vulkan: Update dyn stencil state only as needed. 2016-03-26 20:15:42 -07:00
Unknown W. Brackets 3a08ff5c06 Vulkan: Use new stencil state calculation. 2016-03-26 20:15:41 -07:00
Unknown W. Brackets b6778bf4ad Vulkan: Fix flat texture scaling. 2016-03-26 17:26:55 -07:00