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

◆ for_meshes()

static VertexLayout MayaFlux::Kakshya::VertexLayout::for_meshes ( uint32_t  stride = 60)
inlinestatic

Factory: layout for MeshVertex (position, color, weight, uv, normal, tangent)

Matches MeshVertex field order exactly (60 bytes): loc 0 offset 0 VERTEX_POSITIONS_3D position loc 1 offset 12 VERTEX_COLORS_RGB color loc 2 offset 24 SCALAR_F32 weight loc 3 offset 28 TEXTURE_COORDS_2D uv loc 4 offset 36 VERTEX_NORMALS_3D normal loc 5 offset 48 VERTEX_TANGENTS_3D tangent

Identical offset table to for_points() and for_lines(). FieldOperator processes all three types with the same constants.

Parameters
strideOverride stride (default: sizeof(MeshVertex) == 60)

Definition at line 209 of file VertexLayout.hpp.

210 {
211 VertexLayout layout;
212 layout.stride_bytes = stride;
213
214 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_POSITIONS_3D,
215 .offset_in_vertex = 0,
216 .name = "position" });
217
218 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_COLORS_RGB,
219 .offset_in_vertex = 12,
220 .name = "color" });
221
222 layout.attributes.push_back({ .component_modality = DataModality::SCALAR_F32,
223 .offset_in_vertex = 24,
224 .name = "weight" });
225
226 layout.attributes.push_back({ .component_modality = DataModality::TEXTURE_COORDS_2D,
227 .offset_in_vertex = 28,
228 .name = "uv" });
229
230 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_NORMALS_3D,
231 .offset_in_vertex = 36,
232 .name = "normal" });
233
234 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_TANGENTS_3D,
235 .offset_in_vertex = 48,
236 .name = "tangent" });
237
238 return layout;
239 }
@ SCALAR_F32
Single-channel float data.

References attributes, MayaFlux::Kakshya::SCALAR_F32, stride_bytes, MayaFlux::Kakshya::TEXTURE_COORDS_2D, MayaFlux::Kakshya::VERTEX_COLORS_RGB, MayaFlux::Kakshya::VERTEX_NORMALS_3D, MayaFlux::Kakshya::VERTEX_POSITIONS_3D, and MayaFlux::Kakshya::VERTEX_TANGENTS_3D.

Referenced by MayaFlux::Kakshya::as_mesh_vertex_access(), MayaFlux::Portal::Forma::Plot::background(), MayaFlux::Nodes::GpuSync::MeshWriterNode::compute_frame(), MayaFlux::IO::ModelReader::extract_single_mesh(), MayaFlux::Buffers::FormaProcessor::FormaProcessor(), MayaFlux::Kinesis::generate_sdf_mesh(), MayaFlux::Nodes::GpuSync::GeometryReadbackNode::GeometryReadbackNode(), MayaFlux::Nodes::Network::FieldOperator::get_vertex_layout(), MayaFlux::Portal::Forma::Inspector::make_row_buffer(), MayaFlux::Portal::Forma::make_value_row(), MayaFlux::Buffers::MeshBuffer::MeshBuffer(), MayaFlux::Nodes::GpuSync::MeshWriterNode::MeshWriterNode(), MayaFlux::Buffers::FormaProcessor::on_attach(), MayaFlux::Buffers::DataWriteProcessor::on_attach(), MayaFlux::Portal::Forma::plot(), MayaFlux::Buffers::ComputeMeshBuffer::setup_processors(), MayaFlux::Buffers::VolumeGridBuffer::setup_processors(), and MayaFlux::Kakshya::vertex_layout_for().

+ Here is the caller graph for this function: