2022-04-04 19:44:25 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "../defines.hpp"
|
2022-06-30 12:39:10 +02:00
|
|
|
#include <unordered_map>
|
2022-04-04 19:44:25 +02:00
|
|
|
|
|
|
|
class CShader {
|
2022-12-16 18:17:31 +01:00
|
|
|
public:
|
2022-08-11 20:33:35 +02:00
|
|
|
~CShader();
|
|
|
|
|
2023-06-14 13:29:12 +02:00
|
|
|
GLuint program = 0;
|
|
|
|
GLint proj = -1;
|
|
|
|
GLint color = -1;
|
|
|
|
GLint tex = -1;
|
|
|
|
GLint alpha = -1;
|
|
|
|
GLint posAttrib = -1;
|
|
|
|
GLint texAttrib = -1;
|
|
|
|
GLint discardOpaque = -1;
|
|
|
|
GLint discardAlpha = -1;
|
|
|
|
GLfloat discardAlphaValue = -1;
|
|
|
|
|
|
|
|
GLint topLeft = -1;
|
|
|
|
GLint bottomRight = -1;
|
|
|
|
GLint fullSize = -1;
|
|
|
|
GLint fullSizeUntransformed = -1;
|
|
|
|
GLint radius = -1;
|
|
|
|
|
|
|
|
GLint thick = -1;
|
|
|
|
|
|
|
|
GLint halfpixel = -1;
|
|
|
|
|
|
|
|
GLint range = -1;
|
|
|
|
GLint shadowPower = -1;
|
|
|
|
|
|
|
|
GLint applyTint = -1;
|
|
|
|
GLint tint = -1;
|
|
|
|
|
|
|
|
GLint gradient = -1;
|
|
|
|
GLint gradientLength = -1;
|
|
|
|
GLint angle = -1;
|
|
|
|
|
|
|
|
GLint time = -1;
|
|
|
|
GLint distort = -1;
|
|
|
|
GLint output = -1;
|
2023-03-05 15:05:30 +01:00
|
|
|
|
2023-08-03 15:11:10 +02:00
|
|
|
GLint noise = -1;
|
|
|
|
GLint contrast = -1;
|
|
|
|
GLint brightness = -1;
|
|
|
|
|
2023-06-11 19:30:31 +02:00
|
|
|
GLint getUniformLocation(const std::string&);
|
2022-06-30 12:39:10 +02:00
|
|
|
|
2023-06-11 19:30:31 +02:00
|
|
|
void destroy();
|
2022-12-01 14:36:07 +01:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
private:
|
2022-06-30 12:39:10 +02:00
|
|
|
std::unordered_map<std::string, GLint> m_muUniforms;
|
2022-04-04 19:44:25 +02:00
|
|
|
};
|