UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FVulkanPipelineBarrier Struct Reference

#include <VulkanBarriers.h>

Public Types

using MemoryBarrierArrayType = TArray< VkMemoryBarrier2, TInlineAllocator< 1 > >
 
using ImageBarrierArrayType = TArray< VkImageMemoryBarrier2, TInlineAllocator< 2 > >
 
using BufferBarrierArrayType = TArray< VkBufferMemoryBarrier2 >
 

Public Member Functions

 FVulkanPipelineBarrier ()=default
 
void AddMemoryBarrier (VkAccessFlags SrcAccessFlags, VkAccessFlags DstAccessFlags, VkPipelineStageFlags SrcStageMask, VkPipelineStageFlags DstStageMask)
 
void AddFullImageLayoutTransition (const FVulkanTexture &Texture, VkImageLayout SrcLayout, VkImageLayout DstLayout)
 
void AddImageLayoutTransition (VkImage Image, VkImageLayout SrcLayout, VkImageLayout DstLayout, const VkImageSubresourceRange &SubresourceRange)
 
void AddImageAccessTransition (const FVulkanTexture &Surface, ERHIAccess SrcAccess, ERHIAccess DstAccess, const VkImageSubresourceRange &SubresourceRange, VkImageLayout &InOutLayout)
 
void Execute (VkCommandBuffer CmdBuffer)
 
void Execute (FVulkanCommandBuffer *CmdBuffer)
 

Static Public Member Functions

static VkImageSubresourceRange MakeSubresourceRange (VkImageAspectFlags AspectMask, uint32 FirstMip=0, uint32 NumMips=VK_REMAINING_MIP_LEVELS, uint32 FirstLayer=0, uint32 NumLayers=VK_REMAINING_ARRAY_LAYERS)
 
static VkImageLayout GetDefaultLayout (const FVulkanTexture &VulkanTexture, ERHIAccess DesiredAccess)
 
static VkImageLayout GetDepthOrStencilLayout (ERHIAccess Access)
 

Public Attributes

MemoryBarrierArrayType MemoryBarriers
 
ImageBarrierArrayType ImageBarriers
 
BufferBarrierArrayType BufferBarriers
 

Member Typedef Documentation

◆ BufferBarrierArrayType

◆ ImageBarrierArrayType

◆ MemoryBarrierArrayType

Constructor & Destructor Documentation

◆ FVulkanPipelineBarrier()

FVulkanPipelineBarrier::FVulkanPipelineBarrier ( )
default

Member Function Documentation

◆ AddFullImageLayoutTransition()

void FVulkanPipelineBarrier::AddFullImageLayoutTransition ( const FVulkanTexture Texture,
VkImageLayout  SrcLayout,
VkImageLayout  DstLayout 
)

◆ AddImageAccessTransition()

void FVulkanPipelineBarrier::AddImageAccessTransition ( const FVulkanTexture Surface,
ERHIAccess  SrcAccess,
ERHIAccess  DstAccess,
const VkImageSubresourceRange SubresourceRange,
VkImageLayout InOutLayout 
)

◆ AddImageLayoutTransition()

void FVulkanPipelineBarrier::AddImageLayoutTransition ( VkImage  Image,
VkImageLayout  SrcLayout,
VkImageLayout  DstLayout,
const VkImageSubresourceRange SubresourceRange 
)

◆ AddMemoryBarrier()

void FVulkanPipelineBarrier::AddMemoryBarrier ( VkAccessFlags  SrcAccessFlags,
VkAccessFlags  DstAccessFlags,
VkPipelineStageFlags  SrcStageMask,
VkPipelineStageFlags  DstStageMask 
)

◆ Execute() [1/2]

void FVulkanPipelineBarrier::Execute ( FVulkanCommandBuffer CmdBuffer)

◆ Execute() [2/2]

void FVulkanPipelineBarrier::Execute ( VkCommandBuffer  CmdBuffer)

◆ GetDefaultLayout()

VkImageLayout FVulkanPipelineBarrier::GetDefaultLayout ( const FVulkanTexture VulkanTexture,
ERHIAccess  DesiredAccess 
)
static

◆ GetDepthOrStencilLayout()

VkImageLayout FVulkanPipelineBarrier::GetDepthOrStencilLayout ( ERHIAccess  Access)
static

◆ MakeSubresourceRange()

VkImageSubresourceRange FVulkanPipelineBarrier::MakeSubresourceRange ( VkImageAspectFlags  AspectMask,
uint32  FirstMip = 0,
uint32  NumMips = VK_REMAINING_MIP_LEVELS,
uint32  FirstLayer = 0,
uint32  NumLayers = VK_REMAINING_ARRAY_LAYERS 
)
static

Member Data Documentation

◆ BufferBarriers

BufferBarrierArrayType FVulkanPipelineBarrier::BufferBarriers

◆ ImageBarriers

ImageBarrierArrayType FVulkanPipelineBarrier::ImageBarriers

◆ MemoryBarriers

MemoryBarrierArrayType FVulkanPipelineBarrier::MemoryBarriers

The documentation for this struct was generated from the following files: