ported the University CGI demo from WINDOWS + GLUT + GLEW + GLU + OpenGL 4 to LINUX WAYLAND + EGL + GLES 2 with minimal cuts
This commit is contained in:
38
GL_STUFF/HEADERS/EFFECTS/TexMerger.h
Executable file
38
GL_STUFF/HEADERS/EFFECTS/TexMerger.h
Executable file
@@ -0,0 +1,38 @@
|
||||
#ifndef TEXMERGER_H
|
||||
#define TEXMERGER_H
|
||||
/*
|
||||
#include <GL/glew.h>
|
||||
*/
|
||||
#include <GLES2/gl2.h>
|
||||
#include <vector>
|
||||
|
||||
|
||||
class TexMerger {
|
||||
private:
|
||||
GLuint program;
|
||||
GLuint* mergeBuffers;
|
||||
std::vector<bool> usageMap;
|
||||
GLuint FBO;
|
||||
GLuint quadVAO, vertVBO;
|
||||
GLuint shaderTex1Id, shaderTex2Id;
|
||||
int bufCount;
|
||||
GLuint reserveBuffer();
|
||||
bool isBuffer(GLuint number);
|
||||
void freeBuffer(GLuint number);
|
||||
GLfloat quadVerts[18] = {
|
||||
-1.0f, -1.0f, -1.0f,
|
||||
1.0f, -1.0f, -1.0f,
|
||||
-1.0f, 1.0f, -1.0f,
|
||||
-1.0f, 1.0f, -1.0f,
|
||||
1.0f, -1.0f, -1.0f,
|
||||
1.0f, 1.0f, -1.0f
|
||||
};
|
||||
|
||||
|
||||
public:
|
||||
TexMerger(GLuint texCount, unsigned int texWidth, unsigned int texHeight);
|
||||
GLuint merge(std::vector<GLuint> inTextures, int startIndex, int endIndex);
|
||||
};
|
||||
#endif // !TEXMERGER_H
|
||||
|
||||
|
||||
Reference in New Issue
Block a user