mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-01-20 08:52:22 +01:00
[dxvk] Properly flush everything before recording defrag commands
This commit is contained in:
parent
7df58de815
commit
1a4ac219ed
@ -82,6 +82,7 @@ namespace dxvk {
|
|||||||
|
|
||||||
Rc<DxvkCommandList> DxvkContext::endRecording() {
|
Rc<DxvkCommandList> DxvkContext::endRecording() {
|
||||||
this->endCurrentCommands();
|
this->endCurrentCommands();
|
||||||
|
this->relocateQueuedResources();
|
||||||
|
|
||||||
if (m_descriptorPool->shouldSubmit(false)) {
|
if (m_descriptorPool->shouldSubmit(false)) {
|
||||||
m_cmd->trackDescriptorPool(m_descriptorPool, m_descriptorManager);
|
m_cmd->trackDescriptorPool(m_descriptorPool, m_descriptorManager);
|
||||||
@ -102,8 +103,6 @@ namespace dxvk {
|
|||||||
|
|
||||||
|
|
||||||
void DxvkContext::flushCommandList(DxvkSubmitStatus* status) {
|
void DxvkContext::flushCommandList(DxvkSubmitStatus* status) {
|
||||||
relocateQueuedResources();
|
|
||||||
|
|
||||||
m_device->submitCommandList(
|
m_device->submitCommandList(
|
||||||
this->endRecording(), status);
|
this->endRecording(), status);
|
||||||
|
|
||||||
@ -6565,8 +6564,6 @@ namespace dxvk {
|
|||||||
// If there are any resources to relocate, we have to stall the transfer
|
// If there are any resources to relocate, we have to stall the transfer
|
||||||
// queue so that subsequent resource uploads do not overlap with resource
|
// queue so that subsequent resource uploads do not overlap with resource
|
||||||
// copies on the graphics timeline.
|
// copies on the graphics timeline.
|
||||||
this->spillRenderPass(true);
|
|
||||||
|
|
||||||
relocateResources(
|
relocateResources(
|
||||||
bufferInfos.size(), bufferInfos.data(),
|
bufferInfos.size(), bufferInfos.data(),
|
||||||
imageInfos.size(), imageInfos.data());
|
imageInfos.size(), imageInfos.data());
|
||||||
|
Loading…
x
Reference in New Issue
Block a user