summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Joshua Ashton2021-04-11 10:34:32 +0100
committerGravatar Joshua Ashton2021-04-11 10:34:52 +0100
commit0ec6cb942d146723b87a30918c71ba58306b9885 (patch)
tree5240db9ba4f52b21737cfcc99009cbacfcd23adf /src
parentMerge pull request #6180 from Joshua-Ashton/device_loss_fix (diff)
downloadyuzu-0ec6cb942d146723b87a30918c71ba58306b9885.tar.gz
yuzu-0ec6cb942d146723b87a30918c71ba58306b9885.tar.xz
yuzu-0ec6cb942d146723b87a30918c71ba58306b9885.zip
vk_buffer_cache: Fix offset for NULL vertex buffers
The Vulkan spec states: If an element of pBuffers is VK_NULL_HANDLE, then the corresponding element of pOffsets must be zero. https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/vkCmdBindVertexBuffers2EXT.html#VUID-vkCmdBindVertexBuffers2EXT-pBuffers-04112
Diffstat (limited to 'src')
-rw-r--r--src/video_core/renderer_vulkan/vk_buffer_cache.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/video_core/renderer_vulkan/vk_buffer_cache.cpp b/src/video_core/renderer_vulkan/vk_buffer_cache.cpp
index 668633e7b..8cb65e588 100644
--- a/src/video_core/renderer_vulkan/vk_buffer_cache.cpp
+++ b/src/video_core/renderer_vulkan/vk_buffer_cache.cpp
@@ -176,7 +176,7 @@ void BufferCacheRuntime::BindVertexBuffer(u32 index, VkBuffer buffer, u32 offset
176 u32 stride) { 176 u32 stride) {
177 if (device.IsExtExtendedDynamicStateSupported()) { 177 if (device.IsExtExtendedDynamicStateSupported()) {
178 scheduler.Record([index, buffer, offset, size, stride](vk::CommandBuffer cmdbuf) { 178 scheduler.Record([index, buffer, offset, size, stride](vk::CommandBuffer cmdbuf) {
179 const VkDeviceSize vk_offset = offset; 179 const VkDeviceSize vk_offset = buffer != VK_NULL_HANDLE ? offset : 0;
180 const VkDeviceSize vk_size = buffer != VK_NULL_HANDLE ? size : VK_WHOLE_SIZE; 180 const VkDeviceSize vk_size = buffer != VK_NULL_HANDLE ? size : VK_WHOLE_SIZE;
181 const VkDeviceSize vk_stride = stride; 181 const VkDeviceSize vk_stride = stride;
182 cmdbuf.BindVertexBuffers2EXT(index, 1, &buffer, &vk_offset, &vk_size, &vk_stride); 182 cmdbuf.BindVertexBuffers2EXT(index, 1, &buffer, &vk_offset, &vk_size, &vk_stride);