Hymn to Beauty
C++ 3D Engine
Video::RenderPassAllocator Class Referenceabstract

Responsible for allocating render passes and framebuffers. More...

#include <RenderPassAllocator.hpp>

Inheritance diagram for Video::RenderPassAllocator:
Video::OpenGLRenderPassAllocator Video::VulkanRenderPassAllocator

Public Member Functions

 RenderPassAllocator ()
 Create a new render pass allocator. More...
 
virtual ~RenderPassAllocator ()
 Destructor. More...
 
RenderPassCreateRenderPass (Texture *colorAttachment, RenderPass::LoadOperation colorLoadOperation, Texture *depthAttachment, RenderPass::LoadOperation depthLoadOperation)
 Create a render pass. More...
 
RenderPassCreateAttachmentlessRenderPass (const glm::uvec2 &size, uint32_t msaaSamples)
 Create an attachmentless render pass. More...
 
void FreePasses (const Texture *attachment)
 Free all render passes that contain the given attachment. More...
 

Detailed Description

Responsible for allocating render passes and framebuffers.

Constructor & Destructor Documentation

◆ RenderPassAllocator()

Video::RenderPassAllocator::RenderPassAllocator ( )

Create a new render pass allocator.

◆ ~RenderPassAllocator()

Video::RenderPassAllocator::~RenderPassAllocator ( )
virtual

Destructor.

Member Function Documentation

◆ CreateAttachmentlessRenderPass()

RenderPass * Video::RenderPassAllocator::CreateAttachmentlessRenderPass ( const glm::uvec2 &  size,
uint32_t  msaaSamples 
)

Create an attachmentless render pass.

Parameters
sizeThe framebuffer size.
msaaSamplesNumber of MSAA samples.

◆ CreateRenderPass()

RenderPass * Video::RenderPassAllocator::CreateRenderPass ( Texture colorAttachment,
RenderPass::LoadOperation  colorLoadOperation,
Texture depthAttachment,
RenderPass::LoadOperation  depthLoadOperation 
)

Create a render pass.

Parameters
colorAttachmentThe color attachment to draw to.
colorLoadOperationWhat to do with the previous contents of the color attachment.
depthAttachmentThe depth attachment to draw to.
depthLoadOperationWhat to do with the previous contents of the depth attachment.

◆ FreePasses()

void Video::RenderPassAllocator::FreePasses ( const Texture attachment)

Free all render passes that contain the given attachment.

Parameters
attachmentThe attachment.

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