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

◆ set_mesh() [1/2]

void MayaFlux::Nodes::GpuSync::MeshWriterNode::set_mesh ( const Kakshya::MeshData data)

Replace all vertex and index data from a MeshData owner.

Parameters
dataSource mesh; vertex_variant must hold vector<uint8_t>, index_variant must hold vector<uint32_t>.

Definition at line 21 of file MeshWriterNode.cpp.

22{
23 const auto* vb = std::get_if<std::vector<uint8_t>>(&data.vertex_variant);
24 const auto* ib = std::get_if<std::vector<uint32_t>>(&data.index_variant);
25
26 if (!vb || !ib || vb->empty() || ib->empty() || data.layout.stride_bytes == 0) {
28 "MeshWriterNode::set_mesh: invalid MeshData");
29 return;
30 }
31
32 const auto n = vb->size() / data.layout.stride_bytes;
34 std::span { reinterpret_cast<const MeshVertex*>(vb->data()), n },
35 std::span { ib->data(), ib->size() });
36}
#define MF_ERROR(comp, ctx,...)
void set_mesh(const Kakshya::MeshData &data)
Replace all vertex and index data from a MeshData owner.
@ NodeProcessing
Node graph processing (Nodes::NodeGraphManager)
@ Nodes
DSP Generator and Filter Nodes, graph pipeline, node management.
Kakshya::MeshVertex MeshVertex
Definition VertexSpec.hpp:9

References MayaFlux::Kakshya::MeshData::index_variant, MayaFlux::Kakshya::MeshData::layout, MF_ERROR, MayaFlux::Journal::NodeProcessing, MayaFlux::Journal::Nodes, set_mesh(), MayaFlux::Kakshya::VertexLayout::stride_bytes, and MayaFlux::Kakshya::MeshData::vertex_variant.

Referenced by MayaFlux::Nodes::GpuSync::SDFNode::rebuild(), and set_mesh().

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