2022-04-05 20:49:15 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "../defines.hpp"
|
|
|
|
#include "Texture.hpp"
|
|
|
|
|
|
|
|
class CFramebuffer {
|
2022-12-16 18:17:31 +01:00
|
|
|
public:
|
2022-07-12 23:11:34 +02:00
|
|
|
~CFramebuffer();
|
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
bool alloc(int w, int h);
|
|
|
|
void bind();
|
|
|
|
void release();
|
|
|
|
void reset();
|
|
|
|
bool isAllocated();
|
2022-04-05 20:49:15 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
Vector2D m_Position;
|
|
|
|
Vector2D m_Size;
|
|
|
|
float m_fScale = 1;
|
2022-04-05 20:49:15 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
CTexture m_cTex;
|
|
|
|
GLuint m_iFb = -1;
|
2022-04-05 20:49:15 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
CTexture* m_pStencilTex = nullptr;
|
2022-04-11 16:39:48 +02:00
|
|
|
|
2022-04-05 20:49:15 +02:00
|
|
|
wl_output_transform m_tTransform; // for saving state
|
|
|
|
};
|