Explorar o código

Do not update shader state for DrawTextures (#3876)

gdkchan %!s(int64=3) %!d(string=hai) anos
pai
achega
f088c3d344
Modificáronse 1 ficheiros con 3 adicións e 1 borrados
  1. 3 1
      Ryujinx.Graphics.Gpu/Engine/Threed/DrawManager.cs

+ 3 - 1
Ryujinx.Graphics.Gpu/Engine/Threed/DrawManager.cs

@@ -372,7 +372,9 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
             float srcX1 = ((float)_state.State.DrawTextureDuDx / (1UL << 32)) * dstWidth + srcX0;
             float srcY1 = ((float)_state.State.DrawTextureDvDy / (1UL << 32)) * dstHeight + srcY0;
 
-            engine.UpdateState();
+            engine.UpdateState(ulong.MaxValue & ~(1UL << StateUpdater.ShaderStateIndex));
+
+            _channel.TextureManager.UpdateRenderTargets();
 
             int textureId = _state.State.DrawTextureTextureId;
             int samplerId = _state.State.DrawTextureSamplerId;