From 0dee4b7711fe2d10799e1af15a28a3dbb3301822 Mon Sep 17 00:00:00 2001 From: CamilleLaVey Date: Sun, 9 Aug 2026 01:18:58 -0400 Subject: [PATCH] Meow --- src/video_core/renderer_vulkan/vk_buffer_cache.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/video_core/renderer_vulkan/vk_buffer_cache.cpp b/src/video_core/renderer_vulkan/vk_buffer_cache.cpp index af0390723c..13ff4a99b4 100644 --- a/src/video_core/renderer_vulkan/vk_buffer_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_buffer_cache.cpp @@ -492,17 +492,18 @@ void BufferCacheRuntime::UnifiedMemoryHostBarrier() { } void BufferCacheRuntime::UnifiedMemoryShaderWriteBarrier() { - const bool has_transform_feedback = device.IsExtTransformFeedbackSupported(); + VkAccessFlags src_access = VK_ACCESS_SHADER_WRITE_BIT; + VkPipelineStageFlags src_stages = vk::PIPELINE_STAGE_GRAPHICS_COMPUTE; + if (device.IsExtTransformFeedbackSupported()) { + src_access |= VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT; + src_stages |= VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT; + } const VkMemoryBarrier write_barrier{ .sType = VK_STRUCTURE_TYPE_MEMORY_BARRIER, .pNext = nullptr, - .srcAccessMask = VK_ACCESS_SHADER_WRITE_BIT | - (has_transform_feedback ? VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT : 0), + .srcAccessMask = src_access, .dstAccessMask = VK_ACCESS_HOST_READ_BIT, }; - const VkPipelineStageFlags src_stages = - vk::PIPELINE_STAGE_GRAPHICS_COMPUTE | - (has_transform_feedback ? VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT : 0); scheduler.RequestOutsideRenderPassOperationContext(); scheduler.Record([write_barrier, src_stages](vk::CommandBuffer cmdbuf) { cmdbuf.PipelineBarrier(src_stages, VK_PIPELINE_STAGE_HOST_BIT, 0, write_barrier);