mirror of
https://github.com/EduApps-CDG/OpenDX
synced 2024-12-30 09:45:37 +01:00
[dxvk] Properly support TOP_OF_PIPE and BOTTOM_OF_PIPE for barriers
This commit is contained in:
parent
1631243c64
commit
2aeef063c1
@ -16,6 +16,10 @@ namespace dxvk {
|
|||||||
m_srcStages |= srcStages;
|
m_srcStages |= srcStages;
|
||||||
m_dstStages |= dstStages;
|
m_dstStages |= dstStages;
|
||||||
|
|
||||||
|
if (srcStages == VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT
|
||||||
|
|| dstStages == VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT)
|
||||||
|
access.set(DxvkAccess::Write);
|
||||||
|
|
||||||
if (access.test(DxvkAccess::Write)) {
|
if (access.test(DxvkAccess::Write)) {
|
||||||
VkBufferMemoryBarrier barrier;
|
VkBufferMemoryBarrier barrier;
|
||||||
barrier.sType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER;
|
barrier.sType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER;
|
||||||
@ -48,7 +52,9 @@ namespace dxvk {
|
|||||||
m_srcStages |= srcStages;
|
m_srcStages |= srcStages;
|
||||||
m_dstStages |= dstStages;
|
m_dstStages |= dstStages;
|
||||||
|
|
||||||
if (srcLayout != dstLayout)
|
if (srcStages == VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT
|
||||||
|
|| dstStages == VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT
|
||||||
|
|| srcLayout != dstLayout)
|
||||||
access.set(DxvkAccess::Write);
|
access.set(DxvkAccess::Write);
|
||||||
|
|
||||||
if (access.test(DxvkAccess::Write)) {
|
if (access.test(DxvkAccess::Write)) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user