(GL) Define RARCH_GL_RENDERBUFFER and RARCH_GL_DEPTH24_STENCIL8

This commit is contained in:
twinaphex 2014-05-22 20:44:33 +02:00
parent 2eea12e17e
commit 9fd55c301c
2 changed files with 18 additions and 16 deletions

View File

@ -730,36 +730,30 @@ static bool gl_init_hw_render(gl_t *gl, unsigned width, unsigned height)
{
if (stencil)
{
glBindRenderbuffer(RARCH_GL_RENDERBUFFER, gl->hw_render_depth[i]);
glRenderbufferStorage(RARCH_GL_RENDERBUFFER, RARCH_GL_DEPTH24_STENCIL8, width, height);
glBindRenderbuffer(RARCH_GL_RENDERBUFFER, 0);
#ifdef HAVE_OPENGLES2
// GLES2 is a bit weird, as always. :P
glBindRenderbuffer(GL_RENDERBUFFER, gl->hw_render_depth[i]);
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH24_STENCIL8_OES,
width, height);
glBindRenderbuffer(GL_RENDERBUFFER, 0);
// There's no GL_DEPTH_STENCIL_ATTACHMENT like in desktop GL.
glFramebufferRenderbuffer(RARCH_GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT,
GL_RENDERBUFFER, gl->hw_render_depth[i]);
RARCH_GL_RENDERBUFFER, gl->hw_render_depth[i]);
glFramebufferRenderbuffer(RARCH_GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT,
GL_RENDERBUFFER, gl->hw_render_depth[i]);
RARCH_GL_RENDERBUFFER, gl->hw_render_depth[i]);
#else
// We use ARB FBO extensions, no need to check.
glBindRenderbuffer(GL_RENDERBUFFER, gl->hw_render_depth[i]);
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH24_STENCIL8,
width, height);
glBindRenderbuffer(GL_RENDERBUFFER, 0);
glFramebufferRenderbuffer(RARCH_GL_FRAMEBUFFER, GL_DEPTH_STENCIL_ATTACHMENT,
GL_RENDERBUFFER, gl->hw_render_depth[i]);
RARCH_GL_RENDERBUFFER, gl->hw_render_depth[i]);
#endif
}
else
{
glBindRenderbuffer(GL_RENDERBUFFER, gl->hw_render_depth[i]);
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT16,
glBindRenderbuffer(RARCH_GL_RENDERBUFFER, gl->hw_render_depth[i]);
glRenderbufferStorage(RARCH_GL_RENDERBUFFER, GL_DEPTH_COMPONENT16,
width, height);
glBindRenderbuffer(GL_RENDERBUFFER, 0);
glBindRenderbuffer(RARCH_GL_RENDERBUFFER, 0);
glFramebufferRenderbuffer(RARCH_GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT,
GL_RENDERBUFFER, gl->hw_render_depth[i]);
RARCH_GL_RENDERBUFFER, gl->hw_render_depth[i]);
}
}

View File

@ -76,6 +76,14 @@
#define RARCH_GL_COLOR_ATTACHMENT0 GL_COLOR_ATTACHMENT0
#endif
#if defined(HAVE_OPENGLES2)
#define RARCH_GL_RENDERBUFFER GL_RENDERBUFFER
#define RARCH_GL_DEPTH24_STENCIL8 GL_DEPTH24_STENCIL8_OES
#else
#define RARCH_GL_RENDERBUFFER GL_RENDERBUFFER
#define RARCH_GL_DEPTH24_STENCIL8 GL_DEPTH24_STENCIL8
#endif
static inline bool gl_check_error(void)
{
int error = glGetError();