(gl core shaders) Simplification

This commit is contained in:
twinaphex 2019-04-24 22:10:21 +02:00
parent 3225876f0b
commit 51a69dff44
1 changed files with 27 additions and 27 deletions

View File

@ -679,10 +679,13 @@ void Framebuffer::set_size(const Size2D &size_, GLenum format_)
void Framebuffer::init()
{
GLenum status;
glBindFramebuffer(GL_FRAMEBUFFER, framebuffer);
if (image != 0)
{
glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, 0, 0);
glFramebufferTexture2D(GL_FRAMEBUFFER,
GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, 0, 0);
glDeleteTextures(1, &image);
}
@ -704,12 +707,16 @@ void Framebuffer::init()
format,
size.width, size.height);
glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, image, 0);
auto status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
bool fallback = false;
glFramebufferTexture2D(GL_FRAMEBUFFER,
GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, image, 0);
status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
complete = true;
if (status != GL_FRAMEBUFFER_COMPLETE)
{
complete = false;
switch (status)
{
case GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT:
@ -721,20 +728,11 @@ void Framebuffer::init()
break;
case GL_FRAMEBUFFER_UNSUPPORTED:
RARCH_ERR("[GLCore]: Unsupported FBO, falling back to RGBA8.\n");
fallback = true;
break;
}
complete = false;
}
else
complete = true;
if (fallback)
{
unsigned levels;
RARCH_ERR("[GLCore]: Unsupported FBO, falling back to RGBA8.\n");
glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, 0, 0);
glDeleteTextures(1, &image);
glGenTextures(1, &image);
@ -747,8 +745,10 @@ void Framebuffer::init()
GL_RGBA8,
size.width, size.height);
glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, image, 0);
status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
complete = status == GL_FRAMEBUFFER_COMPLETE;
complete = glCheckFramebufferStatus(GL_FRAMEBUFFER) == GL_FRAMEBUFFER_COMPLETE;
}
break;
}
}
glBindFramebuffer(GL_FRAMEBUFFER, 0);