CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
VKRenderPass.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2022 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
10#include "VKCommon.hpp"
11
14
16
17namespace CeresEngine {
18
19 class VKDevice;
20 class VKGraphicsPipeline;
21
22 class VKRenderTarget;
23
91
92} // namespace CeresEngine
#define CE_EXPLICIT_FALSE
Definition Macros.hpp:416
Definition GPUCommandBuffer.hpp:77
GPUDevice & device
The owning device this object was created from.
Definition Common.hpp:55
Definition GPURenderPass.hpp:149
Definition GPURenderTarget.hpp:105
const Descriptor & descriptor
A structure that describes the object and it's properties.
Definition Common.hpp:69
Definition VKDevice.hpp:79
Definition VKCommon.hpp:143
Definition VKRenderPass.hpp:24
Vector< GPUAttachmentFormatDescriptor, VKAllocator > mColorAttachments
Specifies the color attachments used within the render pass.
Definition VKRenderPass.hpp:38
GPUAttachmentFormatDescriptor mStencilAttachment
Specifies the depth attachment used within the render pass.
Definition VKRenderPass.hpp:52
UInt32 getNumberOfColorAttachments() const
Definition VKRenderPass.hpp:86
void finishRenderTarget(VkCommandBuffer commandBuffer, const VKRenderTarget &renderTarget)
VKRenderPass(VKDevice &device, const GPURenderPassDescriptor &descriptor)
static Allocator & getAllocator() noexcept
Returns the allocator for VKRenderPass.
void prepareRenderTarget(VkCommandBuffer commandBuffer, const VKRenderTarget &renderTarget)
VKObjectAllocator Allocator
An allocator type used to allocate new VKRenderPass instances from a memory pool.
Definition VKRenderPass.hpp:63
VkRenderPass mRenderPass
The render pass object.
Definition VKRenderPass.hpp:30
void end(GPUCommandBuffer &commandBuffer, GPURenderTarget &renderTarget) final
void destroy() noexcept final
GPUAttachmentFormatDescriptor mDepthAttachment
Specifies the depth attachment used within the render pass.
Definition VKRenderPass.hpp:45
void begin(GPUCommandBuffer &commandBuffer, GPURenderTarget &renderTarget, const Color &clearColor=Color(0.0, 0.0, 0.0, 0.0)) final
UInt32 mNumberOfColorAttachments
The number of color attachments in the render pass.
Definition VKRenderPass.hpp:33
const GPURenderPassDescriptor descriptorVK
A structure that describes the render pass and it's properties.
Definition VKRenderPass.hpp:27
Definition VKRenderTarget.hpp:23
Definition Application.hpp:19
VKAllocator & gVKAllocator()
std::vector< T, ScopedAllocatorAdaptor< StdAllocator< T, RawAllocator > > > Vector
Vector is a sequence container that encapsulates dynamic size arrays.
Definition Vector.hpp:17
@ Color
Attachment is used for color output.
ThreadSafeAllocator< MemoryPool< NodePool, AllocatorReference< VKAllocator > > > VKObjectAllocator
A pool allocator to be used for individual object pools.
Definition VKCommon.hpp:59
std::uint32_t UInt32
Definition DataTypes.hpp:23
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25
Definition Span.hpp:668
Render target attachment descriptor structure.
Definition GPURenderPass.hpp:63
Render pass descriptor structure.
Definition GPURenderPass.hpp:112