From b0007af48437b46d6e795418e83cf3e917d8b5ef Mon Sep 17 00:00:00 2001 From: V380-Ori Date: Thu, 2 Oct 2025 17:15:30 +0300 Subject: [PATCH] Vulkan: remove InvalidResource workaround, as it is no longer needed since macOS Sonoma. --- .../PipelineLayoutFactory.cs | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/src/Ryujinx.Graphics.Vulkan/PipelineLayoutFactory.cs b/src/Ryujinx.Graphics.Vulkan/PipelineLayoutFactory.cs index 778ccbea5..d8fe67d68 100644 --- a/src/Ryujinx.Graphics.Vulkan/PipelineLayoutFactory.cs +++ b/src/Ryujinx.Graphics.Vulkan/PipelineLayoutFactory.cs @@ -17,22 +17,10 @@ namespace Ryujinx.Graphics.Vulkan DescriptorSetLayout[] layouts = new DescriptorSetLayout[setDescriptors.Count]; bool[] updateAfterBindFlags = new bool[setDescriptors.Count]; - bool isMoltenVk = false; // gd.IsMoltenVk - for (int setIndex = 0; setIndex < setDescriptors.Count; setIndex++) { ResourceDescriptorCollection rdc = setDescriptors[setIndex]; - ResourceStages activeStages = ResourceStages.None; - - if (isMoltenVk) - { - for (int descIndex = 0; descIndex < rdc.Descriptors.Count; descIndex++) - { - activeStages |= rdc.Descriptors[descIndex].Stages; - } - } - DescriptorSetLayoutBinding[] layoutBindings = new DescriptorSetLayoutBinding[rdc.Descriptors.Count]; bool hasArray = false; @@ -42,13 +30,6 @@ namespace Ryujinx.Graphics.Vulkan ResourceDescriptor descriptor = rdc.Descriptors[descIndex]; ResourceStages stages = descriptor.Stages; - if (descriptor.Type == ResourceType.StorageBuffer && isMoltenVk) - { - // There's a bug on MoltenVK where using the same buffer across different stages - // causes invalid resource errors, allow the binding on all active stages as workaround. - stages = activeStages; - } - layoutBindings[descIndex] = new DescriptorSetLayoutBinding { Binding = (uint)descriptor.Binding,