diff --git a/src/dxvk/dxvk_context.cpp b/src/dxvk/dxvk_context.cpp index 4e738a0e..f6f99f80 100644 --- a/src/dxvk/dxvk_context.cpp +++ b/src/dxvk/dxvk_context.cpp @@ -17,7 +17,7 @@ namespace dxvk { m_execBarriers(DxvkCmdBuffer::ExecBuffer), m_gfxBarriers (DxvkCmdBuffer::ExecBuffer), m_queryManager(m_common->queryPool()), - m_staging (device) { + m_staging (device, StagingBufferSize) { if (m_device->features().extRobustness2.nullDescriptor) m_features.set(DxvkContextFeature::NullDescriptors); if (m_device->features().extExtendedDynamicState.extendedDynamicState) @@ -2599,7 +2599,7 @@ namespace dxvk { void DxvkContext::trimStagingBuffers() { - m_staging.trim(); + m_staging.reset(); } void DxvkContext::beginDebugLabel(VkDebugUtilsLabelEXT *label) { diff --git a/src/dxvk/dxvk_context.h b/src/dxvk/dxvk_context.h index 6bf61cc5..e5b98f0f 100644 --- a/src/dxvk/dxvk_context.h +++ b/src/dxvk/dxvk_context.h @@ -19,7 +19,7 @@ namespace dxvk { * recorded. */ class DxvkContext : public RcObject { - + constexpr static VkDeviceSize StagingBufferSize = 32ull << 20; public: DxvkContext(const Rc& device); @@ -1082,7 +1082,7 @@ namespace dxvk { DxvkBarrierControlFlags m_barrierControl; DxvkGpuQueryManager m_queryManager; - DxvkStagingDataAlloc m_staging; + DxvkStagingBuffer m_staging; DxvkRenderTargetLayouts m_rtLayouts = { };