summaryrefslogtreecommitdiff
path: root/src/render/gl/GLFramebuffer.cpp
diff options
context:
space:
mode:
authorUjinT34 <41110182+UjinT34@users.noreply.github.com>2026-05-08 00:28:34 +0300
committerGitHub <noreply@github.com>2026-05-07 22:28:34 +0100
commit39af3901b389f792a55176041dec9211c82ed1c9 (patch)
treecfe9a9b84e56d2553934aa1600ffe5789aaa667b /src/render/gl/GLFramebuffer.cpp
parentc18186a519d188a3ae8caf9947a5420a25590b82 (diff)
renderer: more FP16 fixes (#14070)
* fix fp16 blur with invalidation * restore tonemap code * fix fade outs * add sdr compat for unaware surfaces * use a better work space, not linear, only for sdr * fix hl tf -> wp tf * cache workbuffer descriptions * linear not normalised WIP * clear offload fb * CM math * fix includes * use precalculated cm for shadows * inner glow cm * quad cm * fix unmodified copy * codegen * cache color CM * mark blur dirty when CM/DS changes * avoid icc workbuffer * fp16 blur finish hack * fix output hdr luminances * use srgb for mirroring/sharing with fp16 * defaults people --------- Co-authored-by: Vaxry <vaxry@vaxry.net>
Diffstat (limited to 'src/render/gl/GLFramebuffer.cpp')
-rw-r--r--src/render/gl/GLFramebuffer.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/render/gl/GLFramebuffer.cpp b/src/render/gl/GLFramebuffer.cpp
index d8b198c3..196f3327 100644
--- a/src/render/gl/GLFramebuffer.cpp
+++ b/src/render/gl/GLFramebuffer.cpp
@@ -171,4 +171,15 @@ void CGLFramebuffer::invalidate(const std::vector<GLenum>& attachments) {
return;
glInvalidateFramebuffer(GL_FRAMEBUFFER, attachments.size(), attachments.data());
+ m_cleared = false;
+}
+
+void CGLFramebuffer::clearAfterInvalidation() {
+ if (m_cleared)
+ return;
+
+ m_cleared = true;
+ glClearColor(0, 0, 0, 0);
+ g_pHyprOpenGL->scissor(nullptr);
+ glClear(GL_COLOR_BUFFER_BIT);
}