diff options
| author | vaxerski <vaxry@vaxry.net> | 2022-08-11 20:29:21 +0200 |
|---|---|---|
| committer | vaxerski <vaxry@vaxry.net> | 2022-08-11 20:29:21 +0200 |
| commit | b178891ab352d3306833fc0f48e5ea395e946300 (patch) | |
| tree | 4a2a8c37fa1fdb168d2c4e21611547e8eb6746c7 /src/render/OpenGL.hpp | |
| parent | 073f08301a8dc238f814cc56f4531597b55a73ec (diff) | |
compile shaders for every context separately
Diffstat (limited to 'src/render/OpenGL.hpp')
| -rw-r--r-- | src/render/OpenGL.hpp | 24 |
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); |
