|
Blender V4.3
|
#include <vk_draw_node.hh>
Public Member Functions | |
| void | build_links (VKResourceStateTracker &resources, VKRenderGraphNodeLinks &node_links, const CreateInfo &create_info) override |
| void | build_commands (VKCommandBufferInterface &command_buffer, Data &data, VKBoundPipelines &r_bound_pipelines) override |
| void | free_data (Data &data) |
Public Member Functions inherited from blender::NonCopyable | |
| NonCopyable (const NonCopyable &other)=delete | |
| NonCopyable & | operator= (const NonCopyable &other)=delete |
| NonCopyable ()=default | |
| NonCopyable (NonCopyable &&other)=default | |
| NonCopyable & | operator= (NonCopyable &&other)=default |
Static Public Member Functions | |
| template<typename Node > | |
| static void | set_node_data (Node &node, const CreateInfo &create_info) |
Static Public Member Functions inherited from blender::gpu::render_graph::VKNodeInfo< VKNodeType::DRAW, VKDrawCreateInfo, VKDrawData, VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT, VKResourceType::IMAGE|VKResourceType::BUFFER > | |
| static void | set_node_data (Node &node, const CreateInfo &create_info) |
Additional Inherited Members | |
Public Types inherited from blender::gpu::render_graph::VKNodeInfo< VKNodeType::DRAW, VKDrawCreateInfo, VKDrawData, VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT, VKResourceType::IMAGE|VKResourceType::BUFFER > | |
| using | CreateInfo |
| using | Data |
Static Public Attributes inherited from blender::gpu::render_graph::VKNodeInfo< VKNodeType::DRAW, VKDrawCreateInfo, VKDrawData, VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT, VKResourceType::IMAGE|VKResourceType::BUFFER > | |
| static constexpr VKNodeType | node_type |
| static constexpr VkPipelineStageFlags | pipeline_stage |
| static constexpr VKResourceType | resource_usages |
Definition at line 34 of file vk_draw_node.hh.
|
inlineoverridevirtual |
Build the commands and add them to the command_buffer.
Definition at line 68 of file vk_draw_node.hh.
References blender::gpu::render_graph::VKCommandBufferInterface::draw(), blender::gpu::render_graph::VKBoundPipelines::graphics, blender::gpu::render_graph::VKBoundPipelines::pipeline, blender::gpu::render_graph::VKBoundPipelines::vertex_buffers, blender::gpu::render_graph::vk_pipeline_data_build_commands(), and blender::gpu::render_graph::vk_vertex_buffer_bindings_build_commands().
|
inlineoverridevirtual |
Extract read/write resource dependencies from create_info and add them to node_links.
Definition at line 56 of file vk_draw_node.hh.
References blender::gpu::render_graph::VKResourceAccessInfo::build_links(), blender::gpu::render_graph::VKDrawCreateInfo::node_data, blender::gpu::render_graph::VKDrawCreateInfo::resources, blender::gpu::render_graph::VKDrawData::vertex_buffers, and blender::gpu::render_graph::vk_vertex_buffer_bindings_build_links().
|
inline |
Definition at line 84 of file vk_draw_node.hh.
References blender::gpu::render_graph::vk_pipeline_data_free().
|
inlinestatic |
Update the node data with the data inside create_info.
Has been implemented as a template to ensure all node specific data (VK*Data/VK*CreateInfo) types can be included in the same header file as the logic. The actual node data (VKRenderGraphNode includes all header files.)
Definition at line 47 of file vk_draw_node.hh.
References blender::gpu::render_graph::VKDrawCreateInfo::node_data, blender::gpu::render_graph::VKDrawData::pipeline_data, and blender::gpu::render_graph::vk_pipeline_data_copy().