renderer: cleanup old redundancies in CFramebuffer

This commit is contained in:
vaxerski 2023-07-29 13:27:40 +02:00
parent 77818e3457
commit f61a714320
3 changed files with 13 additions and 17 deletions

View File

@ -20,7 +20,7 @@ bool CFramebuffer::alloc(int w, int h) {
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
}
if (firstAlloc || m_Size != Vector2D(w, h)) {
if (firstAlloc || m_vSize != Vector2D(w, h)) {
glBindTexture(GL_TEXTURE_2D, m_cTex.m_iTexID);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, w, h, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0);
@ -48,7 +48,7 @@ bool CFramebuffer::alloc(int w, int h) {
glBindTexture(GL_TEXTURE_2D, 0);
glBindFramebuffer(GL_FRAMEBUFFER, g_pHyprOpenGL->m_iCurrentOutputFb);
m_Size = Vector2D(w, h);
m_vSize = Vector2D(w, h);
return true;
}
@ -73,7 +73,7 @@ void CFramebuffer::release() {
m_cTex.m_iTexID = 0;
m_iFb = -1;
m_Size = Vector2D();
m_vSize = Vector2D();
}
CFramebuffer::~CFramebuffer() {

View File

@ -7,20 +7,16 @@ class CFramebuffer {
public:
~CFramebuffer();
bool alloc(int w, int h);
void bind();
void release();
void reset();
bool isAllocated();
bool alloc(int w, int h);
void bind();
void release();
void reset();
bool isAllocated();
Vector2D m_Position;
Vector2D m_Size;
float m_fScale = 1;
Vector2D m_vSize;
CTexture m_cTex;
GLuint m_iFb = -1;
CTexture m_cTex;
GLuint m_iFb = -1;
CTexture* m_pStencilTex = nullptr;
wl_output_transform m_tTransform; // for saving state
CTexture* m_pStencilTex = nullptr;
};

View File

@ -124,7 +124,7 @@ void CHyprOpenGLImpl::begin(CMonitor* pMonitor, CRegion* pDamage, bool fake) {
m_iWLROutputFb = m_iCurrentOutputFb;
// ensure a framebuffer for the monitor exists
if (m_mMonitorRenderResources.find(pMonitor) == m_mMonitorRenderResources.end() || m_RenderData.pCurrentMonData->primaryFB.m_Size != pMonitor->vecPixelSize) {
if (m_mMonitorRenderResources.find(pMonitor) == m_mMonitorRenderResources.end() || m_RenderData.pCurrentMonData->primaryFB.m_vSize != pMonitor->vecPixelSize) {
m_RenderData.pCurrentMonData->stencilTex.allocate();
m_RenderData.pCurrentMonData->primaryFB.m_pStencilTex = &m_RenderData.pCurrentMonData->stencilTex;