Hyprland/src/render/Shader.hpp

50 lines
829 B
C++
Raw Normal View History

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