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

◆ upload_transforms()

void MayaFlux::Buffers::InstanceSSBOProcessor::upload_transforms ( const std::shared_ptr< VKBuffer > &  vertex_buf)
private

Definition at line 109 of file InstanceSSBOProcessor.cpp.

110{
111 const auto& slots = m_network->slots();
112 m_transform_scratch.resize(slots.size());
113
114 for (const auto& slot : slots)
115 m_transform_scratch[slot.index] = slot.transform;
116
118 m_transform_scratch.data(),
119 m_transform_scratch.size() * sizeof(glm::mat4),
122
123 if (auto rp = vertex_buf->get_render_processor())
124 rp->set_instance_count(static_cast<uint32_t>(slots.size()));
125}
std::shared_ptr< Nodes::Network::InstanceNetwork > m_network
void upload_resizing(const void *data, size_t size, const std::shared_ptr< VKBuffer > &target, const std::shared_ptr< VKBuffer > &staging, float growth_factor)
Upload size bytes to target, growing both buffers first if needed.

References m_network, m_transform_scratch, m_transform_ssbo, m_transform_staging, and MayaFlux::Buffers::upload_resizing().

Referenced by on_attach(), and processing_function().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: