aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2023-05-20 13:15:07 -0300
committerGitHub <noreply@github.com>2023-05-20 16:15:07 +0000
commitfb27042e01b0fa110184673d436ec96ec8cf20c7 (patch)
tree7b36f237e5b022b41a48e352074e9cdc6651e785 /src/Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs
parent69a9de33d37de03693a4a4f6f51aead63b0c6334 (diff)
Limit compute storage buffer size (#5028)1.1.810
Diffstat (limited to 'src/Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs')
-rw-r--r--src/Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs b/src/Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs
index 87e58ead..4feb8baf 100644
--- a/src/Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs
+++ b/src/Ryujinx.Graphics.Gpu/Engine/Threed/StateUpdater.cs
@@ -23,8 +23,6 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
public const int PrimitiveRestartStateIndex = 12;
public const int RenderTargetStateIndex = 27;
- private const ulong MaxUnknownStorageSize = 0x100000;
-
private readonly GpuContext _context;
private readonly GpuChannel _channel;
private readonly DeviceStateWithShadow<ThreedClassState> _state;
@@ -359,7 +357,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
SbDescriptor sbDescriptor = _channel.MemoryManager.Physical.Read<SbDescriptor>(sbDescAddress);
uint size;
- if (sb.SbCbSlot == 0)
+ if (sb.SbCbSlot == Constants.DriverReservedUniformBuffer)
{
// Only trust the SbDescriptor size if it comes from slot 0.
size = (uint)sbDescriptor.Size;
@@ -367,7 +365,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
else
{
// TODO: Use full mapped size and somehow speed up buffer sync.
- size = (uint)_channel.MemoryManager.GetMappedSize(sbDescriptor.PackAddress(), MaxUnknownStorageSize);
+ size = (uint)_channel.MemoryManager.GetMappedSize(sbDescriptor.PackAddress(), Constants.MaxUnknownStorageSize);
}
_channel.BufferManager.SetGraphicsStorageBuffer(stage, sb.Slot, sbDescriptor.PackAddress(), size, sb.Flags);