aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2023-10-18 01:47:22 -0300
committerGitHub <noreply@github.com>2023-10-18 04:47:22 +0000
commit28dd7d80af56701887dbb538b56aa58edaf39d91 (patch)
tree2ca7d6728f5514a26f7f5daf3aa5e1303c44dbbd
parent1e06b28b22848706014b18bffcec7553cdab2b2b (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.cs7
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;