This commit is contained in:
twinaphex 2017-11-08 01:53:24 +01:00
parent c1f0fceb4f
commit dc664ff4f2
3 changed files with 7 additions and 12 deletions

View File

@ -87,14 +87,6 @@
static struct video_ortho default_ortho = {0, 1, 0, 1, -1, 1};
#ifdef IOS
/* There is no default frame buffer on iOS. */
void cocoagl_bind_game_view_fbo(void);
#define gl_bind_backbuffer() cocoagl_bind_game_view_fbo()
#else
#define gl_bind_backbuffer() glBindFramebuffer(RARCH_GL_FRAMEBUFFER, 0)
#endif
/* Used for the last pass when rendering to the back buffer. */
static const GLfloat vertexes_flipped[] = {
0, 1,
@ -1263,7 +1255,8 @@ static bool gl_frame(void *data, const void *frame,
gl_update_input_size(gl, frame_width, frame_height, pitch, false);
if (!gl->fbo_inited)
{
gl_bind_backbuffer();
if (gl->renderchain_driver->bind_backbuffer)
gl->renderchain_driver->bind_backbuffer();
gl_set_viewport(gl, video_info, width, height, false, true);
}

View File

@ -69,7 +69,7 @@ typedef struct gl2_renderchain
#define gl2_bind_fb(id) glBindFramebuffer(RARCH_GL_FRAMEBUFFER, id)
static INLINE void gl2_bind_backbuffer(void)
static void gl2_renderchain_bind_backbuffer(void)
{
#ifdef IOS
/* There is no default frame buffer on iOS. */
@ -358,7 +358,7 @@ static void gl2_renderchain_render(
fbo_tex_info_cnt++;
/* Render our FBO texture to back buffer. */
gl2_bind_backbuffer();
gl2_renderchain_bind_backbuffer();
shader_info.data = gl;
shader_info.idx = gl->fbo_pass + 1;
@ -937,7 +937,7 @@ static bool gl2_renderchain_init_hw_render(
}
}
gl2_bind_backbuffer();
gl2_renderchain_bind_backbuffer();
gl->hw_render_fbo_init = true;
context_bind_hw_render(false);
@ -1111,6 +1111,7 @@ static void *gl2_renderchain_new(void)
}
gl_renderchain_driver_t gl2_renderchain = {
gl2_renderchain_bind_backbuffer,
gl2_renderchain_deinit_fbo,
gl2_renderchain_viewport_info,
gl2_renderchain_read_viewport,

View File

@ -827,6 +827,7 @@ typedef struct d3d_renderchain_driver
typedef struct gl_renderchain_driver
{
void (*bind_backbuffer)(void);
void (*deinit_fbo)(void *data);
void (*viewport_info)(
void *data, struct video_viewport *vp);