innit
This commit is contained in:
2026-01-20 12:56:34 +13:00
commit a2faa1955f
73 changed files with 1906 additions and 0 deletions

43
Source/OpenGLUtils.cpp Normal file
View File

@@ -0,0 +1,43 @@
/*
==============================================================================
OpenGLUtils.cpp
Created: 17 Jan 2026 11:41:12am
Author: esca
==============================================================================
*/
#include "OpenGLUtils.h"
#include <cstring>
#include <vector>
#include <math.h>
void svCol(Vertex &v, float newColour[4]){
memcpy(&v.colour, &newColour, 4*sizeof(float));
}
void setColour(std::vector<Vertex> &verticeList, float newColour[4]){
for(Vertex v : verticeList){
svCol(v, newColour);
}
}
void vTransform(std::vector<Vertex> &verticeList, int transform[2]){
for(Vertex &v : verticeList){
v.position[0] = transform[0];
v.position[1] = transform[1];
}
}
std::vector<Vertex> generateSineWave(int numVertices, float angle, float startingColour[4]){
//generates one cycle of a sine wave with vertices numVertices and starting at angle angle
std::vector<Vertex> ret(numVertices, Vertex{});
for (int i = 0; i<numVertices; i++){
ret[i].position[0] = (float)i*1/numVertices;
ret[i].position[1] = sin(angle+i*(2*M_PI/numVertices));
svCol(ret[i], startingColour);
}
return ret;
}