Renderer: rewrite render scheduling (#8683)

This rewrites renderer scheduling. Occlusion is now unified in a new Pass type.
This commit is contained in:
Vaxry 2024-12-22 17:12:09 +01:00 committed by GitHub
parent 1cc1a46c2e
commit e536b02248
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
42 changed files with 1576 additions and 775 deletions

View file

@ -0,0 +1,26 @@
#include "ClearPassElement.hpp"
#include "../OpenGL.hpp"
CClearPassElement::CClearPassElement(const CClearPassElement::SClearData& data_) : data(data_) {
;
}
void CClearPassElement::draw(const CRegion& damage) {
g_pHyprOpenGL->clear(data.color);
}
bool CClearPassElement::needsLiveBlur() {
return false;
}
bool CClearPassElement::needsPrecomputeBlur() {
return false;
}
std::optional<CBox> CClearPassElement::boundingBox() {
return CBox{{}, {INT16_MAX, INT16_MAX}};
}
CRegion CClearPassElement::opaqueRegion() {
return *boundingBox();
}