API_Specification » APISpec_Render_Pass module

Chapter 7: Specification

Contents

Classes

struct VV::V1::Framebuffer::CreateInfo
Specification
struct VV::V1::Framebuffer
Render passes operate in conjunction with framebuffers. Framebuffers represent a collection of specific memory attachments that a render pass instance uses.
struct VV::V1::RenderPass::AttachmentDescription
Specification
struct VV::V1::RenderPass::AttachmentReference
Specification
struct VV::V1::RenderPass::BeginInfo
Specification
struct VV::V1::RenderPass::SubpassDescription
Specification
struct VV::V1::RenderPass::SubpassDependency
Specification
struct VV::V1::RenderPass::CreateInfo
Specification
struct VV::V1::RenderPass
A render pass represents a collection of attachments, subpasses, and dependencies between the subpasses, and describes how the attachments are used over the course of the subpasses.

Enums

enum class EAttachmentDescriptionFlag: ui32 { AttachmentDescription_MAY_ALIAS = VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT, VV_SpecifyBitmaskable = VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM }
Specification
enum class EAttachmentLoadOperation: ui32 { Load = VK_ATTACHMENT_LOAD_OP_LOAD, Clear = VK_ATTACHMENT_LOAD_OP_CLEAR, DontCare = VK_ATTACHMENT_LOAD_OP_DONT_CARE }
Specification
enum class EAttachmentStoreOperation: ui32 { Store = VK_ATTACHMENT_STORE_OP_STORE, DontCare = VK_ATTACHMENT_STORE_OP_DONT_CARE }
Specification
enum class EFrameBufferCreateFlag: ui32 { VV_SpecifyBitmaskable = sizeof(ui32) }
Specification
enum class EResolveModeFlags: ui32 { None = VK_RESOLVE_MODE_NONE, SampleZero = VK_RESOLVE_MODE_SAMPLE_ZERO_BIT, Average = VK_RESOLVE_MODE_AVERAGE_BIT, Min = VK_RESOLVE_MODE_MIN_BIT, Max = VK_RESOLVE_MODE_MAX_BIT, None_KHR = VK_RESOLVE_MODE_NONE_KHR, SampleZero_KHR = VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR, Average_KHR = VK_RESOLVE_MODE_AVERAGE_BIT_KHR, Min_KHR = VK_RESOLVE_MODE_MIN_BIT_KHR, Max_KHR = VK_RESOLVE_MODE_MAX_BIT_KHR, VV_SpecifyBitmaskable = VK_RESOLVE_MODE_FLAG_BITS_MAX_ENUM }
Specification
enum class ESubpassContents: ui32 { Inline = VK_SUBPASS_CONTENTS_INLINE, SecondaryCommandBuffers = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS }
Specification
enum class ESubpassDescriptionFlag: ui32 { VV_SpecifyBitmaskable = sizeof(ui32) }
Specification

Typedefs

using Handle = VkFramebuffer
Specification
using CreateFlags = Bitfield<EFrameBufferCreateFlag, VkFramebufferCreateFlags>
Specification
using Handle = VkRenderPass
Specification
using AttachmentDescriptionFlags = Bitfield<EAttachmentDescriptionFlag, VkAttachmentDescriptionFlags>
Specification
using SubpassDesriptionFlags = Bitfield<ESubpassDescriptionFlag, VkSubpassDescriptionFlags>
Specification
using CreateFlags = Bitfield<EUndefined, VkRenderPassCreateFlags>
Specification
using ResolveModeFlags = Bitfield<EResolveModeFlags, VkResolveModeFlags>

Functions

static void BeginRenderPass(const Handle _commandBuffer, const RenderPass::BeginInfo& _beginInfo, ESubpassContents _contents)
Specification
static void EndRenderPass(Handle _commandBuffer)
Specification .
static auto Create(LogicalDevice::Handle _deviceHanle, const CreateInfo& _creationSpec, const Memory::AllocationCallbacks* _allocator, Handle& _framebuffer) -> EResult
Creates a framebuffer.
static void Destroy(LogicalDevice::Handle _deviceHandle, Handle _framebuffer, const Memory::AllocationCallbacks* _allocator)
Destroy a framebuffer.
static auto Create(LogicalDevice::Handle _deviceHandle, const CreateInfo& _createInfo, const Memory::AllocationCallbacks* _allocator, Handle& _renderPass) -> EResult
Create a render pass.
static void Destroy(LogicalDevice::Handle _deviceHandle, Handle _renderPass, const Memory::AllocationCallbacks* _allocator)
Destroy a render pass.

Enum documentation

Typedef documentation

using Handle = VkFramebuffer

Specification

using CreateFlags = Bitfield<EFrameBufferCreateFlag, VkFramebufferCreateFlags>

Specification

using AttachmentDescriptionFlags = Bitfield<EAttachmentDescriptionFlag, VkAttachmentDescriptionFlags>

Specification

using SubpassDesriptionFlags = Bitfield<ESubpassDescriptionFlag, VkSubpassDescriptionFlags>

Specification

using CreateFlags = Bitfield<EUndefined, VkRenderPassCreateFlags>

Specification

using ResolveModeFlags = Bitfield<EResolveModeFlags, VkResolveModeFlags>

@ < ="://..////1.2-//.#"></>

Function documentation

static void BeginRenderPass(const Handle _commandBuffer, const RenderPass::BeginInfo& _beginInfo, ESubpassContents _contents)

Specification

static void EndRenderPass(Handle _commandBuffer)

Specification .

Parameters
_commandBuffer

static EResult Create(LogicalDevice::Handle _deviceHanle, const CreateInfo& _creationSpec, const Memory::AllocationCallbacks* _allocator, Handle& _framebuffer)

Creates a framebuffer.

Parameters
_deviceHanle
_creationSpec
_allocator
_framebuffer

Specification

static void Destroy(LogicalDevice::Handle _deviceHandle, Handle _framebuffer, const Memory::AllocationCallbacks* _allocator)

Destroy a framebuffer.

Parameters
_deviceHandle
_framebuffer
_allocator

Specification

static EResult Create(LogicalDevice::Handle _deviceHandle, const CreateInfo& _createInfo, const Memory::AllocationCallbacks* _allocator, Handle& _renderPass)

Create a render pass.

Parameters
_deviceHandle
_createInfo
_allocator
_renderPass

Specification

static void Destroy(LogicalDevice::Handle _deviceHandle, Handle _renderPass, const Memory::AllocationCallbacks* _allocator)

Destroy a render pass.

Parameters
_deviceHandle
_renderPass
_allocator

Specification