Open 3D Engine Atom Gem API Reference  24.09
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::Vulkan::RenderPass Class Referencefinal

Inherits AZ::RHI::DeviceObject.

Classes

struct  AttachmentBinding
 Information about one attachment. More...
 
struct  AttachmentLoadStoreAction
 
struct  Descriptor
 
struct  SubpassAttachment
 Properties of one attachment in a subpass. More...
 
struct  SubpassDescriptor
 Describes the used attachments in one subpass. More...
 

Public Member Functions

 AZ_CLASS_ALLOCATOR (RenderPass, AZ::SystemAllocator)
 
 AZ_RTTI (RenderPass, "6F23B984-E6CF-40E2-9A8B-9605D82DFE27", Base)
 
RHI::ResultCode Init (const Descriptor &descriptor)
 
VkRenderPass GetNativeRenderPass () const
 
const DescriptorGetDescriptor () const
 
uint32_t GetAttachmentCount () const
 
- Public Member Functions inherited from AZ::RHI::DeviceObject
 AZ_RTTI (DeviceObject, "{17D34F71-944C-4AF5-9823-627474C4C0A6}", Object)
 
bool IsInitialized () const
 Returns whether the device object is initialized.
 
DeviceGetDevice () const
 
- Public Member Functions inherited from AZ::RHI::Object
 AZ_RTTI (Object, "{E43378F1-2331-4173-94B8-990ED20E6003}")
 
void SetName (const Name &name)
 Sets the name of the object.
 
const Name & GetName () const
 Returns the name set on the object by SetName.
 
uint32_t use_count ()
 Returns the current use count of the object.
 

Static Public Member Functions

static RHI::Ptr< RenderPassCreate ()
 
static Descriptor ConvertRenderAttachmentLayout (Device &device, const RHI::RenderAttachmentLayout &layout, const RHI::MultisampleState &multisampleState)
 

Additional Inherited Members

- Protected Member Functions inherited from AZ::RHI::DeviceObject
void Init (Device &device)
 The derived class should call this method to assign the device.
 
- Protected Member Functions inherited from AZ::RHI::Object
void add_ref () const
 
void release () const
 
- Protected Attributes inherited from AZ::RHI::Object
AZStd::atomic_int m_useCount = 0
 

Member Function Documentation

◆ ConvertRenderAttachmentLayout()

static Descriptor AZ::Vulkan::RenderPass::ConvertRenderAttachmentLayout ( Device device,
const RHI::RenderAttachmentLayout layout,
const RHI::MultisampleState multisampleState 
)
static

Typically the returned descriptor is only used to create a dummy VkRenderPass (cached and reusable) that will be associated with one or more PSOs. The PSO will use such VkRenderPass as a data source to better optimize the layout of the PSO. In the end the real VkRenderPass is built (cached and reusable) at runtime by the FrameGraph and used with VkCmdBeginRenderPass. This is possible because, per the Vulkan spec, it is only required that the PSO VkRenderPass and the VkCmdBeginRenderPass VkRenderPass to be "compatible", but they don't have to be the same object.


The documentation for this class was generated from the following file: