summaryrefslogtreecommitdiff
path: root/src/render/OpenGL.hpp
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2023-10-21 14:15:48 +0100
committerVaxry <vaxry@vaxry.net>2023-10-21 14:15:56 +0100
commit92311d260ab25c11adab05678663bdccaff11fa6 (patch)
treed632d8998a979cb8582eede8dcb0d6f6002f19bd /src/render/OpenGL.hpp
parentaf72404259f7a39069d1449bedbc49b3e6ae4fbc (diff)
renderer: add transformers
Diffstat (limited to 'src/render/OpenGL.hpp')
-rw-r--r--src/render/OpenGL.hpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/render/OpenGL.hpp b/src/render/OpenGL.hpp
index 61e8ffdb..0d4b7852 100644
--- a/src/render/OpenGL.hpp
+++ b/src/render/OpenGL.hpp
@@ -13,6 +13,7 @@
#include "Shader.hpp"
#include "Texture.hpp"
#include "Framebuffer.hpp"
+#include "Transformer.hpp"
#include "../debug/TracyDefines.hpp"
@@ -41,6 +42,7 @@ struct SMonitorRenderData {
CFramebuffer primaryFB;
CFramebuffer mirrorFB; // these are used for some effects,
CFramebuffer mirrorSwapFB; // etc
+ CFramebuffer offMainFB;
CFramebuffer monitorMirrorFB; // used for mirroring outputs
@@ -75,6 +77,7 @@ struct SCurrentRenderData {
float savedProjection[9];
SMonitorRenderData* pCurrentMonData = nullptr;
+ CFramebuffer* currentFB = nullptr;
CRegion damage;
@@ -142,6 +145,10 @@ class CHyprOpenGLImpl {
void applyScreenShader(const std::string& path);
+ void bindOffMain();
+ void renderOffToMain(CFramebuffer* off);
+ void bindBackOnMain();
+
SCurrentRenderData m_RenderData;
GLint m_iCurrentOutputFb = 0;