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

◆ for_points()

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

Factory: layout for PointVertex (position, color, size, uv, normal, tangent)

Matches PointVertex 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 size 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(PointVertex) == 60)

Definition at line 93 of file VertexLayout.hpp.

94 {
95 VertexLayout layout;
96 layout.stride_bytes = stride;
97
98 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_POSITIONS_3D,
99 .offset_in_vertex = 0,
100 .name = "position" });
101
102 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_COLORS_RGB,
103 .offset_in_vertex = 12,
104 .name = "color" });
105
106 layout.attributes.push_back({ .component_modality = DataModality::SCALAR_F32,
107 .offset_in_vertex = 24,
108 .name = "size" });
109
110 layout.attributes.push_back({ .component_modality = DataModality::TEXTURE_COORDS_2D,
111 .offset_in_vertex = 28,
112 .name = "uv" });
113
114 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_NORMALS_3D,
115 .offset_in_vertex = 36,
116 .name = "normal" });
117
118 layout.attributes.push_back({ .component_modality = DataModality::VERTEX_TANGENTS_3D,
119 .offset_in_vertex = 48,
120 .name = "tangent" });
121
122 return layout;
123 }
@ 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_point_vertex_access(), MayaFlux::Nodes::Network::FieldOperator::get_vertex_layout(), MayaFlux::Nodes::GpuSync::PointCollectionNode::PointCollectionNode(), MayaFlux::Nodes::GpuSync::PointCollectionNode::PointCollectionNode(), MayaFlux::Nodes::GpuSync::PointNode::PointNode(), and MayaFlux::Nodes::vertex_layout_for().

+ Here is the caller graph for this function: