39 :
public VKNodeInfo<VKNodeType::DISPATCH_INDIRECT,
40 VKDispatchIndirectCreateInfo,
41 VKDispatchIndirectData,
42 VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT | VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT,
43 VKResourceType::IMAGE | VKResourceType::BUFFER> {
77 node_links.
inputs.append({buffer_resource, VK_ACCESS_INDIRECT_COMMAND_READ_BIT});
90 VK_PIPELINE_BIND_POINT_COMPUTE,
91 VK_SHADER_STAGE_COMPUTE_BIT);
virtual void dispatch_indirect(VkBuffer buffer, VkDeviceSize offset)=0
static void set_node_data(Node &node, const CreateInfo &create_info)
void build_links(VKResourceStateTracker &resources, VKRenderGraphNodeLinks &node_links, const CreateInfo &create_info) override
void free_data(VKDispatchIndirectData &data)
void build_commands(VKCommandBufferInterface &command_buffer, Data &data, VKBoundPipelines &r_bound_pipelines) override
ResourceWithStamp get_buffer(VkBuffer vk_buffer) const
void vk_pipeline_data_copy(VKPipelineData &dst, const VKPipelineData &src)
void vk_pipeline_data_free(VKPipelineData &data)
void vk_pipeline_data_build_commands(VKCommandBufferInterface &command_buffer, const VKPipelineData &pipeline_data, VKBoundPipeline &r_bound_pipeline, VkPipelineBindPoint vk_pipeline_bind_point, VkShaderStageFlags vk_shader_stage_flags)
VKDispatchIndirectCreateInfo(const VKResourceAccessInfo &resources)
VKDispatchIndirectData dispatch_indirect_node
const VKResourceAccessInfo & resources
VKPipelineData pipeline_data
Vector< VKRenderGraphLink > inputs
void build_links(VKResourceStateTracker &resources, VKRenderGraphNodeLinks &node_links) const