aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Gpu/Image
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2019-12-06 20:19:12 -0300
committerThog <thog@protonmail.com>2020-01-09 02:13:00 +0100
commit17fb11ddb98e94aaf494eaf6002ab149c5d54000 (patch)
treeefd9b4853181d1f5b0b7b56e186206ee49d692c1 /Ryujinx.Graphics.Gpu/Image
parentcb171f6ebfa7e1aa5721503d1c1115719957932d (diff)
Fix wrong maximum id on sampler pool in some cases
Diffstat (limited to 'Ryujinx.Graphics.Gpu/Image')
-rw-r--r--Ryujinx.Graphics.Gpu/Image/Pool.cs5
-rw-r--r--Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs2
2 files changed, 5 insertions, 2 deletions
diff --git a/Ryujinx.Graphics.Gpu/Image/Pool.cs b/Ryujinx.Graphics.Gpu/Image/Pool.cs
index 7457de19..5ce8d7f6 100644
--- a/Ryujinx.Graphics.Gpu/Image/Pool.cs
+++ b/Ryujinx.Graphics.Gpu/Image/Pool.cs
@@ -11,12 +11,15 @@ namespace Ryujinx.Graphics.Gpu.Image
protected T[] Items;
+ public int MaximumId { get; }
+
public ulong Address { get; }
public ulong Size { get; }
public Pool(GpuContext context, ulong address, int maximumId)
{
- Context = context;
+ Context = context;
+ MaximumId = maximumId;
int count = maximumId + 1;
diff --git a/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs b/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs
index 290bb665..63a42709 100644
--- a/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs
+++ b/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs
@@ -76,7 +76,7 @@ namespace Ryujinx.Graphics.Gpu.Image
if (_samplerPool != null)
{
- if (_samplerPool.Address == address)
+ if (_samplerPool.Address == address && _samplerPool.MaximumId >= maximumId)
{
return;
}