aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Vulkan/PipelineBase.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Graphics.Vulkan/PipelineBase.cs')
-rw-r--r--Ryujinx.Graphics.Vulkan/PipelineBase.cs19
1 files changed, 19 insertions, 0 deletions
diff --git a/Ryujinx.Graphics.Vulkan/PipelineBase.cs b/Ryujinx.Graphics.Vulkan/PipelineBase.cs
index 3abab065..6c2f1684 100644
--- a/Ryujinx.Graphics.Vulkan/PipelineBase.cs
+++ b/Ryujinx.Graphics.Vulkan/PipelineBase.cs
@@ -1297,6 +1297,25 @@ namespace Ryujinx.Graphics.Vulkan
SignalStateChange();
}
+ public void SwapBuffer(Auto<DisposableBuffer> from, Auto<DisposableBuffer> to)
+ {
+ _indexBuffer.Swap(from, to);
+
+ for (int i = 0; i < _vertexBuffers.Length; i++)
+ {
+ _vertexBuffers[i].Swap(from, to);
+ }
+
+ for (int i = 0; i < _transformFeedbackBuffers.Length; i++)
+ {
+ _transformFeedbackBuffers[i].Swap(from, to);
+ }
+
+ _descriptorSetUpdater.SwapBuffer(from, to);
+
+ SignalCommandBufferChange();
+ }
+
public unsafe void TextureBarrier()
{
MemoryBarrier memoryBarrier = new MemoryBarrier()