33#include "VulkanDefines.h"
34#include "VulkanDevice.h"
35#include "Base/Headers/Pointer.hpp"
36#include "Base/Headers/Buffer.hpp"
37struct VkAttachmentDescription;
38DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass);
The equivelent of std::vector but with a bit more control.
Provides a constant, unmodifiable pointer that has shared ownership of a dynamically allocated object...
A hash-based key-value store, useful for quick associative lookups.
Provides a modifiable pointer that has shared ownership of a dynamically allocated object.
VulkanRenderDefinition(const DynamicPointer< VulkanDevice > &instance)
Constructs a render definition for the given device.
Dictionary< uint04, VkRenderPass > m_render_pass_grab
Render passes for grab images, keyed by multisample count.
~VulkanRenderDefinition()
Destructor.
bool m_use_depth
Whether depth testing is enabled for these render passes.
VkFormat getSwapChainImageFormat() const
Returns the swap chain image format.
Dictionary< uint04, VkRenderPass > m_render_pass_khr
Render passes for KHR swap chain images, keyed by multisample count.
VkFormat m_swap_chain_image_format
The image format used by the swap chain.
void setSwapChainImageFormat(VkFormat format)
Sets the swap chain image format.
VkRenderPass renderPass(uint04 multisample, bool is_grab_image) const
Returns the render pass for the given configuration.
ConstPointer< VulkanDevice > m_device
The Vulkan device.
void cleanup()
Releases all render pass resources.
Buffer< VkAttachmentDescription, BufferAllocator< VkAttachmentDescription, 64, true > > getAttachments(uint04 multisample_count, bool is_grab_image, uint08 format) const
Returns the attachment descriptions for a render pass configuration.
void createRenderPass(uint04 multisample, bool is_grab_image)
Creates a render pass with the given multisample count.
void setDevice(const ConstPointer< VulkanDevice > &instance)
Sets the Vulkan device.
The primary namespace for the NDEVR SDK.
uint64_t uint08
-Defines an alias representing an 8 byte, unsigned integer
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...