summaryrefslogtreecommitdiff
path: root/src/render/OpenGL.hpp
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2022-08-11 20:29:21 +0200
committervaxerski <vaxry@vaxry.net>2022-08-11 20:29:21 +0200
commitb178891ab352d3306833fc0f48e5ea395e946300 (patch)
tree4a2a8c37fa1fdb168d2c4e21611547e8eb6746c7 /src/render/OpenGL.hpp
parent073f08301a8dc238f814cc56f4531597b55a73ec (diff)
compile shaders for every context separately
Diffstat (limited to 'src/render/OpenGL.hpp')
-rw-r--r--src/render/OpenGL.hpp24
1 files changed, 13 insertions, 11 deletions
diff --git a/src/render/OpenGL.hpp b/src/render/OpenGL.hpp
index 5e8d32e6..6575cf82 100644
--- a/src/render/OpenGL.hpp
+++ b/src/render/OpenGL.hpp
@@ -42,6 +42,18 @@ struct SMonitorRenderData {
bool blurFBDirty = true;
wlr_box backgroundTexBox;
+
+ // Shaders
+ bool m_bShadersInitialized = false;
+ CShader m_shQUAD;
+ CShader m_shRGBA;
+ CShader m_shRGBX;
+ CShader m_shEXT;
+ CShader m_shBLUR1;
+ CShader m_shBLUR2;
+ CShader m_shSHADOW;
+ CShader m_shBORDER1;
+ //
};
struct SCurrentRenderData {
@@ -114,20 +126,10 @@ private:
bool m_bFakeFrame = false;
bool m_bEndFrame = false;
- // Shaders
- CShader m_shQUAD;
- CShader m_shRGBA;
- CShader m_shRGBX;
- CShader m_shEXT;
- CShader m_shBLUR1;
- CShader m_shBLUR2;
- CShader m_shSHADOW;
- CShader m_shBORDER1;
- //
-
GLuint createProgram(const std::string&, const std::string&);
GLuint compileShader(const GLuint&, std::string);
void createBGTextureForMonitor(CMonitor*);
+ void initShaders();
// returns the out FB, can be either Mirror or MirrorSwap
CFramebuffer* blurMainFramebufferWithDamage(float a, wlr_box* pBox, pixman_region32_t* damage);