Commit Graph
19938 Commits
Author SHA1 Message Date
Unknown W. Brackets f3d113a777 thin3d: Use 32-bit indexed drawing to match. 2016-03-21 07:17:38 -07:00
Unknown W. Brackets 1b8985a080 thin3d: Fix tranposed Vulkan bufs. 2016-03-21 07:17:37 -07:00
Henrik Rydgård 6831f6fc46 Merge pull request #8650 from unknownbrackets/vulkan-buf
Vulkan: Cache only device in push buffers
2016-03-21 08:27:50 +01:00
Henrik Rydgård 2a35d4b4c5 Merge pull request #8653 from unknownbrackets/warnings
Warning fixes from clang
2016-03-21 08:27:25 +01:00
Henrik Rydgård 3dcdd4b533 Merge pull request #8654 from unknownbrackets/vulkan-leaks
Plug some Vulkan leaks
2016-03-21 08:27:08 +01:00
Unknown W. Brackets 62af4fe48b softgpu: Prevent leaking thin3d buffers. 2016-03-21 00:04:02 -07:00
Unknown W. Brackets bdc0dac6c5 thin3d: Plug leaks in samplers and vk shaders. 2016-03-21 00:03:34 -07:00
Unknown W. Brackets 2d34c0a8bc Vulkan: Free anything pending before the device.
This includes, for example, device memory and etc.
2016-03-21 00:02:59 -07:00
Unknown W. Brackets 9c3e12ead0 Remove some unused things reported by clang. 2016-03-20 23:14:08 -07:00
Unknown W. Brackets 2461a849f9 Correct some warnings reported by clang. 2016-03-20 23:13:28 -07:00
Unknown W. Brackets d90527e41e Correct some missing overrides. 2016-03-20 23:05:05 -07:00
Unknown W. Brackets 450d70ff06 Vulkan: Remove some outdated comments. 2016-03-20 22:51:07 -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
Henrik Rydgard 0009b55210 Make placeholder texture black 2016-03-20 23:36:09 +01:00
Henrik Rydgård 2485c320f3 Merge pull request #8649 from unknownbrackets/vulkan-buf
Dynamically reallocate buffers when out of space
2016-03-20 23:32:08 +01:00
Unknown W. Brackets e3d9630b9a Vulkan: Handle oom slightly better. 2016-03-20 15:25:59 -07:00
Unknown W. Brackets f91cc6191a Vulkan: Start with smaller buffers by default. 2016-03-20 15:23:03 -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
Unknown W. Brackets 82a902382b Vulkan: Centralize shader UBO update, DRY. 2016-03-20 15:15:03 -07:00
Henrik Rydgard 1515754f2d Another prescale UV fix 2016-03-20 23:02:56 +01:00
Henrik Rydgård 8e459b7816 Merge pull request #8648 from unknownbrackets/warnings
Minor warning fixes
2016-03-20 22:48:27 +01:00
Henrik Rydgard a6a56b9a69 Vulkan: Cache the texture pointer. Use a checkerboard placeholder texture where missing
(framebuffer textures in non-buffered)
2016-03-20 22:46:49 +01:00
Unknown W. Brackets e92e6bbd03 Move VulkanUtil.cpp into the filter. 2016-03-20 14:26:51 -07:00
Unknown W. Brackets ab6dd51d9c Fix a small resource handle leak. 2016-03-20 14:24:35 -07:00
Unknown W. Brackets ef1dc583a2 Fix various minor warnings. 2016-03-20 14:17:51 -07:00
Unknown W. Brackets 87eadad326 Fix a failed lock release warning. 2016-03-20 14:16:54 -07:00
Henrik Rydgard ffde7020d2 Vulkan prescale UV fix 2016-03-20 21:48:28 +01:00
Henrik Rydgård 2b46ae59a0 Merge pull request #8601 from hrydgard/vulkan
Vulkan rendering backend. Early Work-In-Progress
2016-03-20 21:08:58 +01:00
Henrik Rydgard 0e199272ed Buildfix to last commit, add a comment 2016-03-20 20:56:33 +01:00
Henrik Rydgard 827481d41d Combined two uniforms to get the base UBO down to 512b, in order to not waste space (nVidia needs 256-byte alignment) 2016-03-20 20:53:46 +01:00
Henrik Rydgard c33c3cf3d4 Vulkan: Add ugly temporary warning about buffered rendering not working 2016-03-20 20:26:52 +01:00
Henrik Rydgard 29bc07eb0a SoftGPU with Vulkan runs but displays black 2016-03-20 20:04:49 +01:00
Henrik Rydgard 0b1cfaf751 Be more economical with UBO pushbuffer space by reusing the last data when possible. 2016-03-20 19:35:31 +01:00
Henrik Rydgard 5d19f3dfb8 Decode vertex data directly into the vertex pushbuffer, saving a memcpy. 2016-03-20 19:35:03 +01:00
Henrik Rydgard d7ffc39d2a Vulkan: Remove support for software skinning to reduce complexity 2016-03-20 19:35:03 +01:00
Henrik Rydgard d0659f0deb No need to align vertex/index data. Will only be harmful for an upcoming optimization. 2016-03-20 19:35:03 +01:00
Henrik Rydgard 18d78f9a35 Minor optimizations 2016-03-20 19:35:03 +01:00
Henrik Rydgard 5d45413dab Fix a resource leak. Request COHERENT memory for pushbuffers. 2016-03-20 19:35:03 +01:00
Henrik Rydgard 8e9acff6aa Always specify depthstencil state in pipelines.
Turns out it's only OK to leave out if rendering only to color,
otherwise behaviour is undefined - which means it may still be enabled.
2016-03-20 19:35:03 +01:00
Henrik Rydgard 2c61b1e763 Change the VulkanPushBuffer API to allow for adding support for dynamic growth 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 f7113bb2e3 Use separate pushbuffers for UBO/Index/Vertex. This will make decoding directly into the pushbuffers easier, plus other benefits later.
(For example, we'll often be able to avoid rebinding the vertex and
index buffers at new offsets by just keep counting upwards between draws,
if the vertex format is the same but other state changed)
2016-03-20 19:31:02 +01:00
Henrik Rydgard 966cb89d41 Vulkan: Fix our use of dual source blending, re-enable if available. 2016-03-20 19:31:02 +01:00
Unknown W. Brackets add506a0d3 Cleanup differences in aniso handling.
Some places were not handling it as a power of two.
2016-03-20 19:31:02 +01:00
Unknown W. Brackets 82f3df1e06 Vulkan: Initial support for aniso filtering. 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
Unknown W. Brackets 3744008d1f Correct the 5551 format for now.
Otherwise we get wrong colors - also we are still converting colors.
2016-03-20 19:31:02 +01:00
Unknown W. Brackets baa7132a89 Vulkan: Simplify color testing. 2016-03-20 19:31:02 +01:00