UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
VulkanBarriers.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved..
2
3#pragma once
4
5#include "Containers/Array.h"
6#include "RHIPipeline.h"
7#include "VulkanResources.h"
9#include "VulkanThirdParty.h"
10
12
14{
16
20
24
29 void Execute(VkCommandBuffer CmdBuffer);
30 void Execute(FVulkanCommandBuffer* CmdBuffer);
31
33
34 // Predetermined layouts for given RHIAccess
35 static VkImageLayout GetDefaultLayout(const FVulkanTexture& VulkanTexture, ERHIAccess DesiredAccess);
37};
38
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
ERHIAccess
Definition RHIAccess.h:11
ERHIPipeline
Definition RHIPipeline.h:13
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition VulkanCommandBuffer.h:43
Definition VulkanSynchronization.h:127
Definition VulkanResources.h:604
Definition VulkanBarriers.h:14
static VkImageLayout GetDepthOrStencilLayout(ERHIAccess Access)
Definition VulkanBarriers.cpp:476
void AddImageAccessTransition(const FVulkanTexture &Surface, ERHIAccess SrcAccess, ERHIAccess DstAccess, const VkImageSubresourceRange &SubresourceRange, VkImageLayout &InOutLayout)
Definition VulkanBarriers.cpp:1715
void AddImageLayoutTransition(VkImage Image, VkImageLayout SrcLayout, VkImageLayout DstLayout, const VkImageSubresourceRange &SubresourceRange)
Definition VulkanBarriers.cpp:1703
void AddMemoryBarrier(VkAccessFlags SrcAccessFlags, VkAccessFlags DstAccessFlags, VkPipelineStageFlags SrcStageMask, VkPipelineStageFlags DstStageMask)
Definition VulkanBarriers.cpp:1663
MemoryBarrierArrayType MemoryBarriers
Definition VulkanBarriers.h:21
void AddFullImageLayoutTransition(const FVulkanTexture &Texture, VkImageLayout SrcLayout, VkImageLayout DstLayout)
Definition VulkanBarriers.cpp:1684
ImageBarrierArrayType ImageBarriers
Definition VulkanBarriers.h:22
BufferBarrierArrayType BufferBarriers
Definition VulkanBarriers.h:23
static VkImageSubresourceRange MakeSubresourceRange(VkImageAspectFlags AspectMask, uint32 FirstMip=0, uint32 NumMips=VK_REMAINING_MIP_LEVELS, uint32 FirstLayer=0, uint32 NumLayers=VK_REMAINING_ARRAY_LAYERS)
Definition VulkanBarriers.cpp:1803
FVulkanPipelineBarrier()=default
static VkImageLayout GetDefaultLayout(const FVulkanTexture &VulkanTexture, ERHIAccess DesiredAccess)
Definition VulkanBarriers.cpp:1824
Definition VulkanBarriers.h:40
ERHIPipeline DstPipelines
Definition VulkanBarriers.h:41
FVulkanSemaphore * Semaphore
Definition VulkanBarriers.h:42
VkEvent EventHandle
Definition VulkanBarriers.h:43
TArray< FRHITransitionInfo > TransitionInfos
Definition VulkanBarriers.h:44
ERHIPipeline SrcPipelines
Definition VulkanBarriers.h:41