diff options
| author | riperiperi <rhy3756547@hotmail.com> | 2022-12-01 15:30:13 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-12-01 16:30:13 +0100 |
| commit | 458452279cee03bfe1bbf2c3daf3fc9722b03a74 (patch) | |
| tree | d62389dca124f75f2245d03d288ff54b87b7269e /Ryujinx.Graphics.GAL | |
| parent | 817b89767aa31b3b2847203b27151044f5d323f6 (diff) | |
GPU: Track buffer migrations and flush source on incomplete copy (#3952)
* Track buffer migrations and flush source on incomplete copy
Makes sure that the modified range list is always from the latest iteration of the buffer, and flushes earlier iterations of a buffer if the data has not been migrated yet.
* Cleanup 1
* Reduce cost for redundant signal checks on Vulkan
* Only inherit the range list if there are pending ranges.
* Fix OpenGL
* Address Feedback
* Whoops
Diffstat (limited to 'Ryujinx.Graphics.GAL')
| -rw-r--r-- | Ryujinx.Graphics.GAL/IRenderer.cs | 1 | ||||
| -rw-r--r-- | Ryujinx.Graphics.GAL/Multithreading/ThreadedRenderer.cs | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/Ryujinx.Graphics.GAL/IRenderer.cs b/Ryujinx.Graphics.GAL/IRenderer.cs index cf67f648..c72320a2 100644 --- a/Ryujinx.Graphics.GAL/IRenderer.cs +++ b/Ryujinx.Graphics.GAL/IRenderer.cs @@ -29,6 +29,7 @@ namespace Ryujinx.Graphics.GAL ReadOnlySpan<byte> GetBufferData(BufferHandle buffer, int offset, int size); Capabilities GetCapabilities(); + ulong GetCurrentSync(); HardwareInfo GetHardwareInfo(); IProgram LoadProgramBinary(byte[] programBinary, bool hasFragmentShader, ShaderInfo info); diff --git a/Ryujinx.Graphics.GAL/Multithreading/ThreadedRenderer.cs b/Ryujinx.Graphics.GAL/Multithreading/ThreadedRenderer.cs index 7a625af3..a9e3b75c 100644 --- a/Ryujinx.Graphics.GAL/Multithreading/ThreadedRenderer.cs +++ b/Ryujinx.Graphics.GAL/Multithreading/ThreadedRenderer.cs @@ -338,6 +338,11 @@ namespace Ryujinx.Graphics.GAL.Multithreading return box.Result; } + public ulong GetCurrentSync() + { + return _baseRenderer.GetCurrentSync(); + } + public HardwareInfo GetHardwareInfo() { return _baseRenderer.GetHardwareInfo(); |
