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

◆ for_lines()

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

Factory: layout for LineVertex (position, color, thickness, uv, normal, tangent)

Matches LineVertex 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 UNKNOWN thickness loc 3 offset 28 TEXTURE_COORDS_2D uv loc 4 offset 36 VERTEX_NORMALS_3D normal loc 5 offset 48 VERTEX_TANGENTS_3D tangent

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

Definition at line 138 of file VertexLayout.hpp.

139 {
140 VertexLayout layout;
141 layout.stride_bytes = stride;
142
143 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_POSITIONS_3D,
144 .offset_in_vertex = 0,
145 .name = "position" });
146
147 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_COLORS_RGB,
148 .offset_in_vertex = 12,
149 .name = "color" });
150
151 layout.attributes.push_back({ .component_modality = DataModality::SCALAR_F32,
152 .offset_in_vertex = 24,
153 .name = "thickness" });
154
155 layout.attributes.push_back({ .component_modality = DataModality::TEXTURE_COORDS_2D,
156 .offset_in_vertex = 28,
157 .name = "uv" });
158
159 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_NORMALS_3D,
160 .offset_in_vertex = 36,
161 .name = "normal" });
162
163 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_TANGENTS_3D,
164 .offset_in_vertex = 48,
165 .name = "tangent" });
166 return layout;
167 }
@ 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_line_vertex_access(), MayaFlux::Nodes::Network::FieldOperator::get_vertex_layout(), MayaFlux::Nodes::GpuSync::PathGeneratorNode::PathGeneratorNode(), MayaFlux::Nodes::GpuSync::PathGeneratorNode::PathGeneratorNode(), MayaFlux::Nodes::GpuSync::TopologyGeneratorNode::TopologyGeneratorNode(), MayaFlux::Nodes::GpuSync::TopologyGeneratorNode::TopologyGeneratorNode(), and MayaFlux::Nodes::vertex_layout_for().

+ Here is the caller graph for this function: