diff options
| author | gdkchan <gab.dark.100@gmail.com> | 2022-03-14 23:42:08 -0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-03-15 03:42:08 +0100 |
| commit | e5ad1dfa48590685fd93443a2adfd8568f6c1db0 (patch) | |
| tree | 4810662b088d4f553a25f293778f39861fb0326d /Ryujinx.Graphics.Gpu/Image | |
| parent | 79becc4b78bd8a8402cc86a96c812cb8ac9d027a (diff) | |
Implement S8D24 texture format and tweak depth range detection (#2458)
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Image')
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/FormatTable.cs | 1 | ||||
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs | 2 | ||||
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/TexturePool.cs | 2 |
3 files changed, 3 insertions, 2 deletions
diff --git a/Ryujinx.Graphics.Gpu/Image/FormatTable.cs b/Ryujinx.Graphics.Gpu/Image/FormatTable.cs index 3c97e2e2..e5a4badc 100644 --- a/Ryujinx.Graphics.Gpu/Image/FormatTable.cs +++ b/Ryujinx.Graphics.Gpu/Image/FormatTable.cs @@ -55,6 +55,7 @@ namespace Ryujinx.Graphics.Gpu.Image { 0x24a0e, new FormatInfo(Format.D24UnormS8Uint, 1, 1, 4, 2) }, { 0x24a29, new FormatInfo(Format.D24UnormS8Uint, 1, 1, 4, 2) }, { 0x48a29, new FormatInfo(Format.D24UnormS8Uint, 1, 1, 4, 2) }, + { 0x4912b, new FormatInfo(Format.S8UintD24Unorm, 1, 1, 4, 2) }, { 0x25385, new FormatInfo(Format.D32FloatS8Uint, 1, 1, 8, 2) }, { 0x253b0, new FormatInfo(Format.D32FloatS8Uint, 1, 1, 8, 2) }, { 0xa4908, new FormatInfo(Format.R8G8B8A8Srgb, 1, 1, 4, 4) }, diff --git a/Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs b/Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs index 188e1e09..b798441f 100644 --- a/Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs +++ b/Ryujinx.Graphics.Gpu/Image/TextureCompatibility.cs @@ -203,7 +203,7 @@ namespace Ryujinx.Graphics.Gpu.Image } if ((lhs.FormatInfo.Format == Format.D24UnormS8Uint || - lhs.FormatInfo.Format == Format.D24X8Unorm) && rhs.FormatInfo.Format == Format.B8G8R8A8Unorm) + lhs.FormatInfo.Format == Format.S8UintD24Unorm) && rhs.FormatInfo.Format == Format.B8G8R8A8Unorm) { return TextureMatchQuality.FormatAlias; } diff --git a/Ryujinx.Graphics.Gpu/Image/TexturePool.cs b/Ryujinx.Graphics.Gpu/Image/TexturePool.cs index f936615f..10a6ff82 100644 --- a/Ryujinx.Graphics.Gpu/Image/TexturePool.cs +++ b/Ryujinx.Graphics.Gpu/Image/TexturePool.cs @@ -362,7 +362,7 @@ namespace Ryujinx.Graphics.Gpu.Image return DepthStencilMode.Depth; } - if (format == Format.D24X8Unorm || format == Format.D24UnormS8Uint) + if (format == Format.D24UnormS8Uint) { return component == SwizzleComponent.Red ? DepthStencilMode.Stencil |
