Cogs.Core
IndicesGenerator.cpp
1#include "IndicesGenerator.h"
2
3void Cogs::Geometry::generateQuadIndices(std::vector<uint32_t>& dest, size_t quadCount, uint32_t vertexNumber, bool sharedVertices) {
4 int step = sharedVertices ? -1 : 1;
5
6 dest.reserve(dest.size() + (quadCount * 6));
7
8 for (; quadCount--; vertexNumber += step) {
9 dest.push_back(vertexNumber++); // 0
10 dest.push_back(vertexNumber++); // 1
11 dest.push_back(vertexNumber); // 2
12 dest.push_back(vertexNumber--); // 2
13 dest.push_back(vertexNumber++); // 1
14 dest.push_back(++vertexNumber); // 3
15 }
16}
COGSFOUNDATION_API void generateQuadIndices(std::vector< uint32_t > &dest, size_t quadCount, uint32_t vertexNumber, bool sharedVertices)
Generate indices for rendering the specified number of quads from four vertices starting from the giv...