diff --git a/src/shader_recompiler/backend/spirv/emit_spirv.cpp b/src/shader_recompiler/backend/spirv/emit_spirv.cpp index 6a1eb4d88..1eeae087d 100644 --- a/src/shader_recompiler/backend/spirv/emit_spirv.cpp +++ b/src/shader_recompiler/backend/spirv/emit_spirv.cpp @@ -316,6 +316,10 @@ void SetupCapabilities(const Info& info, const Profile& profile, const RuntimeIn if (info.loads.GetAny(IR::Attribute::RenderTargetIndex)) { ctx.AddCapability(spv::Capability::Geometry); } + if (info.stores.Get(IR::Attribute::StencilRef)) { + ctx.AddExtension("SPV_EXT_shader_stencil_export"); + ctx.AddCapability(spv::Capability::StencilExportEXT); + } } if (stage == LogicalStage::TessellationControl || stage == LogicalStage::TessellationEval) { ctx.AddCapability(spv::Capability::Tessellation);