Process for one batch cycle.
103{
105 return;
106
109 }
110
117
118 for (
size_t i = 0; i <
m_count; ++i) {
120
121 if (has_position) {
122 glm::vec3 displacement(0.0F);
124 displacement += field(pos);
125 }
126 pos += displacement;
127 }
128
129 if (has_color) {
130 glm::vec3 color(0.0F);
132 color += field(pos);
133 }
135 }
136
137 if (has_normal) {
138 glm::vec3 normal(0.0F);
140 normal += field(pos);
141 }
142 float len = glm::length(normal);
144 }
145
146 if (has_tangent) {
147 glm::vec3 tangent(0.0F);
149 tangent += field(pos);
150 }
151 float len = glm::length(tangent);
153 }
154
155 if (has_scalar) {
156 float value = 0.0F;
158 value += field(pos);
159 }
161 }
162
163 if (has_uv) {
165 glm::vec2 uv(0.0F);
167 uv += field(ref);
168 *reinterpret_cast<glm::vec2*>(
170 }
171 }
172
174}
static constexpr size_t k_position_offset
std::vector< uint8_t > m_reference_data
std::vector< Kinesis::VectorField > m_position_fields
std::vector< uint8_t > m_vertex_data
static constexpr size_t k_tangent_offset
static constexpr size_t k_normal_offset
std::vector< Kinesis::VectorField > m_tangent_fields
std::vector< Kinesis::SpatialField > m_scalar_fields
glm::vec3 & vec3_at(size_t i, size_t offset)
std::vector< Kinesis::VectorField > m_color_fields
static constexpr size_t k_scalar_offset
std::vector< Kinesis::VectorField > m_normal_fields
float & float_at(size_t i, size_t offset)
static constexpr size_t k_stride
std::vector< Kinesis::UVField > m_uv_fields
static constexpr size_t k_color_offset
static constexpr size_t k_uv_offset
glm::vec3 ref_position_at(size_t i) const