From 41614c7c882e721699fbf2f681f5a893101183a8 Mon Sep 17 00:00:00 2001 From: CamilleLaVey Date: Sun, 23 Nov 2025 01:52:08 -0400 Subject: [PATCH] [vk, spir-v] Adding decoration for NonWritable buffers if vertexPipelineStoresAndAtomics isn't available --- src/shader_recompiler/backend/spirv/spirv_emit_context.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp b/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp index 4c3e101433..e19f92cf24 100644 --- a/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp +++ b/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp @@ -315,6 +315,9 @@ void DefineSsbos(EmitContext& ctx, StorageTypeDefinition& type_def, ctx.Decorate(id, spv::Decoration::Binding, binding); ctx.Decorate(id, spv::Decoration::DescriptorSet, 0U); ctx.Name(id, fmt::format("ssbo{}", index)); + if (!desc.is_written) { + ctx.Decorate(id, spv::Decoration::NonWritable); + } if (ctx.profile.supported_spirv >= 0x00010400) { ctx.interfaces.push_back(id); }