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();
|
|
|
|
|
|
|
|
GLuint program = 0;
|
2022-12-16 18:17:31 +01:00
|
|
|
GLint proj;
|
|
|
|
GLint color;
|
|
|
|
GLint tex;
|
|
|
|
GLint alpha;
|
|
|
|
GLint posAttrib;
|
|
|
|
GLint texAttrib;
|
|
|
|
GLint discardOpaque;
|
2022-06-30 12:39:10 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
GLint topLeft;
|
|
|
|
GLint bottomRight;
|
|
|
|
GLint fullSize;
|
|
|
|
GLint fullSizeUntransformed;
|
|
|
|
GLint radius;
|
|
|
|
GLint primitiveMultisample;
|
2022-07-29 17:07:33 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
GLint thick;
|
2022-07-29 17:07:33 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
GLint halfpixel;
|
2022-07-29 17:07:33 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
GLint range;
|
|
|
|
GLint shadowPower;
|
2022-07-29 17:07:33 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
GLint applyTint;
|
|
|
|
GLint tint;
|
2022-08-30 12:46:17 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
GLint gradient;
|
|
|
|
GLint gradientLength;
|
|
|
|
GLint angle;
|
2022-11-26 18:56:43 +01:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
GLint getUniformLocation(const std::string&);
|
2022-06-30 12:39:10 +02:00
|
|
|
|
2022-12-16 18:17:31 +01: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
|
|
|
};
|