Ver Fonte

GPU: Fix layered attachment write (#4131)

Fixes a regression caused by #4003 where the code that writes `_vtgWritesRtLayer` was removed, breaking the crowd in mario strikers.
riperiperi há 3 anos atrás
pai
commit
5a085cba0f
1 ficheiros alterados com 8 adições e 1 exclusões
  1. 8 1
      Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs

+ 8 - 1
Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs

@@ -1295,7 +1295,14 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
 
             for (int stageIndex = 0; stageIndex < Constants.ShaderStages; stageIndex++)
             {
-                _currentProgramInfo[stageIndex] = gs.Shaders[stageIndex + 1]?.Info;
+                ShaderProgramInfo info = gs.Shaders[stageIndex + 1]?.Info;
+
+                if (info?.UsesRtLayer == true)
+                {
+                    _vtgWritesRtLayer = true;
+                }
+
+                _currentProgramInfo[stageIndex] = info;
             }
 
             _context.Renderer.Pipeline.SetProgram(gs.HostProgram);