diff options
author | gdkchan <gab.dark.100@gmail.com> | 2023-10-18 01:47:22 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-18 04:47:22 +0000 |
commit | 28dd7d80af56701887dbb538b56aa58edaf39d91 (patch) | |
tree | 2ca7d6728f5514a26f7f5daf3aa5e1303c44dbbd | |
parent | 1e06b28b22848706014b18bffcec7553cdab2b2b (diff) |
Enable copy between MS and non-MS textures with different height (#5801)1.1.1053
-rw-r--r-- | src/Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs b/src/Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs index eafa50b2..3a0efcdd 100644 --- a/src/Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs +++ b/src/Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs @@ -374,6 +374,13 @@ namespace Ryujinx.Graphics.Gpu.Image return stride == rhs.Stride ? TextureViewCompatibility.CopyOnly : TextureViewCompatibility.LayoutIncompatible; } + else if (lhs.Target.IsMultisample() != rhs.Target.IsMultisample() && alignedWidthMatches && lhsAlignedSize.Height == rhsAlignedSize.Height) + { + // Copy between multisample and non-multisample textures with mismatching size is allowed, + // as long aligned size matches. + + return TextureViewCompatibility.CopyOnly; + } else { return TextureViewCompatibility.LayoutIncompatible; |