mirror of
https://github.com/skyline-emu/skyline.git
synced 2025-01-11 07:19:09 +01:00
Fixup subpass barriers and flags
This commit is contained in:
parent
5ab80901c6
commit
3c8df327f1
@ -360,6 +360,7 @@ namespace skyline::gpu::cache {
|
|||||||
.stencilStoreOp = vk::AttachmentStoreOp::eStore,
|
.stencilStoreOp = vk::AttachmentStoreOp::eStore,
|
||||||
.initialLayout = view->texture->layout,
|
.initialLayout = view->texture->layout,
|
||||||
.finalLayout = view->texture->layout,
|
.finalLayout = view->texture->layout,
|
||||||
|
.flags = vk::AttachmentDescriptionFlagBits::eMayAlias
|
||||||
});
|
});
|
||||||
attachmentReferences.push_back(vk::AttachmentReference{
|
attachmentReferences.push_back(vk::AttachmentReference{
|
||||||
.attachment = static_cast<u32>(attachmentDescriptions.size() - 1),
|
.attachment = static_cast<u32>(attachmentDescriptions.size() - 1),
|
||||||
|
@ -40,6 +40,7 @@ namespace skyline::gpu::interconnect::node {
|
|||||||
.format = *view->format,
|
.format = *view->format,
|
||||||
.initialLayout = view->texture->layout,
|
.initialLayout = view->texture->layout,
|
||||||
.finalLayout = view->texture->layout,
|
.finalLayout = view->texture->layout,
|
||||||
|
.flags = vk::AttachmentDescriptionFlagBits::eMayAlias
|
||||||
});
|
});
|
||||||
return static_cast<u32>(attachments.size() - 1);
|
return static_cast<u32>(attachments.size() - 1);
|
||||||
} else {
|
} else {
|
||||||
@ -104,8 +105,8 @@ namespace skyline::gpu::interconnect::node {
|
|||||||
dependency.dstAccessMask = vk::AccessFlagBits::eColorAttachmentRead;
|
dependency.dstAccessMask = vk::AccessFlagBits::eColorAttachmentRead;
|
||||||
} else if (view->format->vkAspect & (vk::ImageAspectFlagBits::eDepth | vk::ImageAspectFlagBits::eStencil)) {
|
} else if (view->format->vkAspect & (vk::ImageAspectFlagBits::eDepth | vk::ImageAspectFlagBits::eStencil)) {
|
||||||
dependency.srcStageMask = vk::PipelineStageFlagBits::eEarlyFragmentTests | vk::PipelineStageFlagBits::eLateFragmentTests;
|
dependency.srcStageMask = vk::PipelineStageFlagBits::eEarlyFragmentTests | vk::PipelineStageFlagBits::eLateFragmentTests;
|
||||||
dependency.srcAccessMask = vk::AccessFlagBits::eDepthStencilAttachmentRead;
|
dependency.srcAccessMask = vk::AccessFlagBits::eDepthStencilAttachmentWrite;
|
||||||
dependency.dstAccessMask = vk::AccessFlagBits::eDepthStencilAttachmentWrite;
|
dependency.dstAccessMask = vk::AccessFlagBits::eDepthStencilAttachmentRead;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (std::find(subpassDependencies.begin(), subpassDependencies.end(), dependency) == subpassDependencies.end())
|
if (std::find(subpassDependencies.begin(), subpassDependencies.end(), dependency) == subpassDependencies.end())
|
||||||
|
Loading…
x
Reference in New Issue
Block a user