diff options
| author | Vaxry <43317083+vaxerski@users.noreply.github.com> | 2024-12-22 17:12:09 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-12-22 17:12:09 +0100 |
| commit | e536b02248f370971716b744968776f6880528be (patch) | |
| tree | 5e5755b7894eb44f9259cfe0e1d97899148a8a60 /src/render/pass/TextureMatteElement.hpp | |
| parent | 1cc1a46c2e154a27750b81307040d3bf7ff0f64f (diff) | |
Renderer: rewrite render scheduling (#8683)
This rewrites renderer scheduling. Occlusion is now unified in a new Pass type.
Diffstat (limited to 'src/render/pass/TextureMatteElement.hpp')
| -rw-r--r-- | src/render/pass/TextureMatteElement.hpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/render/pass/TextureMatteElement.hpp b/src/render/pass/TextureMatteElement.hpp new file mode 100644 index 00000000..bf673946 --- /dev/null +++ b/src/render/pass/TextureMatteElement.hpp @@ -0,0 +1,29 @@ +#pragma once +#include "PassElement.hpp" +#include "../Framebuffer.hpp" + +class CTexture; + +class CTextureMatteElement : public IPassElement { + public: + struct STextureMatteData { + CBox box; + SP<CTexture> tex; + SP<CFramebuffer> fb; + bool disableTransformAndModify = false; + }; + + CTextureMatteElement(const STextureMatteData& data_); + virtual ~CTextureMatteElement() = default; + + virtual void draw(const CRegion& damage); + virtual bool needsLiveBlur(); + virtual bool needsPrecomputeBlur(); + + virtual const char* passName() { + return "CTextureMatteElement"; + } + + private: + STextureMatteData data; +};
\ No newline at end of file |
