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

@ -1,8 +1,7 @@
#pragma once
#include "Framebuffer.hpp"
struct SRenderData;
#include "pass/SurfacePassElement.hpp"
// A window transformer can be attached to a window.
// If any is attached, Hyprland will render the window to a separate fb, then call the transform() func with it,
@ -18,5 +17,5 @@ class IWindowTransformer {
virtual CFramebuffer* transform(CFramebuffer* in) = 0;
// called by Hyprland before a window main pass is started.
virtual void preWindowRender(SRenderData* pRenderData);
virtual void preWindowRender(CSurfacePassElement::SRenderData* pRenderData);
};