mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-01-19 05:52:11 +01:00
[dxvk] Don't flush barriers in renderPassBindFramebuffer
Instead, any pending barriers must be flushed manually if necessary.
This commit is contained in:
parent
5b90b6a7ce
commit
1631243c64
@ -541,6 +541,12 @@ namespace dxvk {
|
||||
|
||||
if (attachmentIndex < 0) {
|
||||
this->spillRenderPass();
|
||||
|
||||
if (m_barriers.isImageDirty(
|
||||
imageView->image(),
|
||||
imageView->subresources(),
|
||||
DxvkAccess::Write))
|
||||
m_barriers.recordCommands(m_cmd);
|
||||
|
||||
// Set up and bind a temporary framebuffer
|
||||
DxvkRenderTargets attachments;
|
||||
@ -1764,6 +1770,12 @@ namespace dxvk {
|
||||
if (attachmentIndex < 0) {
|
||||
this->spillRenderPass();
|
||||
|
||||
if (m_barriers.isImageDirty(
|
||||
imageView->image(),
|
||||
imageView->subresources(),
|
||||
DxvkAccess::Write))
|
||||
m_barriers.recordCommands(m_cmd);
|
||||
|
||||
// Set up a temporary framebuffer
|
||||
DxvkRenderTargets attachments;
|
||||
DxvkRenderPassOps ops;
|
||||
@ -2374,6 +2386,8 @@ namespace dxvk {
|
||||
m_flags.set(DxvkContextFlag::GpRenderPassBound);
|
||||
m_flags.clr(DxvkContextFlag::GpClearRenderTargets);
|
||||
|
||||
m_barriers.recordCommands(m_cmd);
|
||||
|
||||
this->renderPassBindFramebuffer(
|
||||
m_state.om.framebuffer,
|
||||
m_state.om.renderPassOps,
|
||||
@ -2433,8 +2447,6 @@ namespace dxvk {
|
||||
info.clearValueCount = clearValueCount;
|
||||
info.pClearValues = clearValues;
|
||||
|
||||
m_barriers.recordCommands(m_cmd);
|
||||
|
||||
m_cmd->cmdBeginRenderPass(&info,
|
||||
VK_SUBPASS_CONTENTS_INLINE);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user