MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ update_collection_vertex_layout()

void MayaFlux::Buffers::CompositeGeometryBuffer::update_collection_vertex_layout ( const std::string &  name,
const Kakshya::VertexLayout layout 
)

Push a topology-specific vertex layout to the matching RenderProcessor.

Parameters
nameGeometry identifier
layoutVertexLayout belonging exclusively to this collection

Must be called after update_collection_render_range() so the RenderProcessor compiles its Vulkan pipeline with the correct vertex-input stride and attribute offsets for this topology.

Definition at line 208 of file CompositeGeometryBuffer.cpp.

211{
212 auto it = m_render_data.find(name);
213 if (it == m_render_data.end()) {
214 return;
215 }
216
217 it->second.render_processor->set_buffer_vertex_layout(
218 std::dynamic_pointer_cast<VKBuffer>(shared_from_this()),
219 layout);
220
222 "Updated vertex layout for '{}': stride={}, vertices={}",
223 name, layout.stride_bytes, layout.vertex_count);
224}
#define MF_RT_TRACE(comp, ctx,...)
std::unordered_map< std::string, RenderData > m_render_data
@ BufferProcessing
Buffer processing (Buffers::BufferManager, processing chains)
@ Buffers
Buffers, Managers, processors and processing chains.

References MayaFlux::Journal::BufferProcessing, MayaFlux::Journal::Buffers, m_render_data, MF_RT_TRACE, MayaFlux::Kakshya::VertexLayout::stride_bytes, and MayaFlux::Kakshya::VertexLayout::vertex_count.