35 VKDrawIndirectCreateInfo,
37 VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT,
38 VKResourceType::IMAGE | VKResourceType::BUFFER> {
47 template<
typename Node,
typename Storage>
50 node.storage_index = storage.draw_indirect.append_and_get_index(create_info.
node_data);
67 node_links.
inputs.append({buffer_resource, VK_ACCESS_INDIRECT_COMMAND_READ_BIT});
78 command_buffer,
data.graphics.viewport,
data.graphics.line_width, r_bound_pipelines);
80 data.graphics.pipeline_data,
82 VK_PIPELINE_BIND_POINT_GRAPHICS,
83 VK_SHADER_STAGE_ALL_GRAPHICS);
BMesh const char void * data
virtual void draw_indirect(VkBuffer buffer, VkDeviceSize offset, uint32_t draw_count, uint32_t stride)=0
void build_commands(VKCommandBufferInterface &command_buffer, Data &data, VKBoundPipelines &r_bound_pipelines) override
void build_links(VKResourceStateTracker &resources, VKRenderGraphNodeLinks &node_links, const CreateInfo &create_info) override
void free_data(Data &data)
static void set_node_data(Node &node, Storage &storage, const CreateInfo &create_info)
VKDrawIndirectCreateInfo CreateInfo
ResourceWithStamp get_buffer(VkBuffer vk_buffer) const
void vk_pipeline_data_copy(VKPipelineData &dst, const VKPipelineData &src)
void vk_pipeline_dynamic_graphics_build_commands(VKCommandBufferInterface &command_buffer, const VKViewportData &viewport, const std::optional< float > line_width, VKBoundPipelines &r_bound_pipelines)
void vk_vertex_buffer_bindings_build_links(VKResourceStateTracker &resources, VKRenderGraphNodeLinks &node_links, const VKVertexBufferBindings &vertex_buffers)
void vk_pipeline_data_free(VKPipelineData &data)
void vk_vertex_buffer_bindings_build_commands(VKCommandBufferInterface &command_buffer, const VKVertexBufferBindings &vertex_buffer_bindings, VKVertexBufferBindings &r_bound_vertex_buffers)
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)
VKVertexBufferBindings vertex_buffers
struct blender::gpu::render_graph::VKBoundPipelines::@245157173206043141117177130032265241203257234004 graphics
const VKResourceAccessInfo & resources
VKDrawIndirectCreateInfo(const VKResourceAccessInfo &resources)
VKDrawIndirectData node_data
VKVertexBufferBindings vertex_buffers
VKPipelineDataGraphics graphics
Vector< VKRenderGraphLink > inputs
void build_links(VKResourceStateTracker &resources, VKRenderGraphNodeLinks &node_links) const