Blender V5.0
blender::gpu::render_graph::VKRenderGraphLink Struct Reference

#include <vk_render_graph_links.hh>

Public Member Functions

void debug_print (std::ostream &ss, const VKResourceStateTracker &resources) const
bool is_link_to_buffer () const

Public Attributes

ResourceWithStamp resource
VkAccessFlags vk_access_flags
VkImageLayout vk_image_layout = VK_IMAGE_LAYOUT_UNDEFINED
VkImageAspectFlags vk_image_aspect = VK_IMAGE_ASPECT_NONE
VKSubImageRange subimage

Detailed Description

Definition at line 27 of file vk_render_graph_links.hh.

Member Function Documentation

◆ debug_print()

◆ is_link_to_buffer()

bool blender::gpu::render_graph::VKRenderGraphLink::is_link_to_buffer ( ) const
inline

Check if this link points to a buffer resource. Implementation checks vk_image_aspect field as that must be set to NONE for buffers.

Saved additional lookups when reordering nodes.

Definition at line 69 of file vk_render_graph_links.hh.

References vk_image_aspect.

Member Data Documentation

◆ resource

ResourceWithStamp blender::gpu::render_graph::VKRenderGraphLink::resource

Which resource is being accessed.

Definition at line 31 of file vk_render_graph_links.hh.

Referenced by debug_print().

◆ subimage

VKSubImageRange blender::gpu::render_graph::VKRenderGraphLink::subimage

The layers and mipmap levels to bind.

Used when layer_tracking will be enabled to transit the layout of these layers only.

Definition at line 59 of file vk_render_graph_links.hh.

Referenced by debug_print().

◆ vk_access_flags

VkAccessFlags blender::gpu::render_graph::VKRenderGraphLink::vk_access_flags

How is the resource being accessed.

When generating pipeline barriers of a resource, the nodes access flags are evaluated to create src/dst access masks.

Definition at line 39 of file vk_render_graph_links.hh.

Referenced by debug_print().

◆ vk_image_aspect

VkImageAspectFlags blender::gpu::render_graph::VKRenderGraphLink::vk_image_aspect = VK_IMAGE_ASPECT_NONE

Which aspect of the image is being used.

Definition at line 52 of file vk_render_graph_links.hh.

Referenced by debug_print(), and is_link_to_buffer().

◆ vk_image_layout

VkImageLayout blender::gpu::render_graph::VKRenderGraphLink::vk_image_layout = VK_IMAGE_LAYOUT_UNDEFINED

When resource is an image, which layout should the image be using.

When generating the commands this attribute is compared with the actual image layout of the the image. Additional pipeline barriers will be added to transit to the layout stored here.

Definition at line 47 of file vk_render_graph_links.hh.

Referenced by debug_print().


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