From fd7567a6b56fcb82a52b85097582fc0a67038457 Mon Sep 17 00:00:00 2001 From: gdkchan Date: Tue, 28 Sep 2021 20:55:12 -0300 Subject: Only make render target 2D textures layered if needed (#2646) * Only make render target 2D textures layered if needed * Shader cache version bump * Ensure topology is updated on channel swap --- .../Shader/Cache/Definition/HostShaderCacheEntry.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'Ryujinx.Graphics.Gpu/Shader/Cache/Definition/HostShaderCacheEntry.cs') diff --git a/Ryujinx.Graphics.Gpu/Shader/Cache/Definition/HostShaderCacheEntry.cs b/Ryujinx.Graphics.Gpu/Shader/Cache/Definition/HostShaderCacheEntry.cs index b538e2de..68f6b3c1 100644 --- a/Ryujinx.Graphics.Gpu/Shader/Cache/Definition/HostShaderCacheEntry.cs +++ b/Ryujinx.Graphics.Gpu/Shader/Cache/Definition/HostShaderCacheEntry.cs @@ -76,6 +76,7 @@ namespace Ryujinx.Graphics.Gpu.Shader.Cache.Definition programInfo.Textures.Count, programInfo.Images.Count, programInfo.UsesInstanceId, + programInfo.UsesRtLayer, programInfo.ClipDistancesWritten); CBuffers = programInfo.CBuffers.ToArray(); SBuffers = programInfo.SBuffers.ToArray(); @@ -89,7 +90,14 @@ namespace Ryujinx.Graphics.Gpu.Shader.Cache.Definition /// A new from this instance internal ShaderProgramInfo ToShaderProgramInfo() { - return new ShaderProgramInfo(CBuffers, SBuffers, Textures, Images, Header.UsesInstanceId, Header.ClipDistancesWritten); + return new ShaderProgramInfo( + CBuffers, + SBuffers, + Textures, + Images, + Header.UseFlags.HasFlag(UseFlags.InstanceId), + Header.UseFlags.HasFlag(UseFlags.RtLayer), + Header.ClipDistancesWritten); } /// -- cgit v1.2.3