diff --git a/Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs b/Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs index cba7edfe0..3d85e2c32 100644 --- a/Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs +++ b/Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs @@ -313,6 +313,8 @@ namespace Ryujinx.Graphics.Gpu.Shader TransformFeedbackDescriptor[] transformFeedbackDescriptors = GetTransformFeedbackDescriptors(ref state); + UpdatePipelineInfo(ref state, ref pipeline, graphicsState, channel); + ShaderSpecializationState specState = new ShaderSpecializationState(ref graphicsState, ref pipeline, transformFeedbackDescriptors); GpuAccessorState gpuAccessorState = new GpuAccessorState(poolState, default, graphicsState, specState, transformFeedbackDescriptors); @@ -389,8 +391,6 @@ namespace Ryujinx.Graphics.Gpu.Shader } } - UpdatePipelineInfo(ref state, ref pipeline, graphicsState, channel); - ShaderSource[] shaderSourcesArray = shaderSources.ToArray(); int fragmentOutputMap = shaders[5]?.Info.FragmentOutputMap ?? -1;