mirror of
https://github.com/X11Libre/xserver.git
synced 2026-09-26 21:12:25 +00:00
glamor: Convert to using libepoxy.
Libepoxy hides all the GL versus GLES2 dispatch handling for us, with
higher performance.
v2: Squash in the later patch to drop the later of two repeated
glamor_get_dispatch()es instead (caught by keithp)
Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
parent
f34dc7fa96
commit
0373b3f4f7
21 changed files with 898 additions and 1440 deletions
|
|
@ -218,11 +218,10 @@ void
|
|||
glamor_block_handler(ScreenPtr screen)
|
||||
{
|
||||
glamor_screen_private *glamor_priv = glamor_get_screen_private(screen);
|
||||
glamor_gl_dispatch *dispatch;
|
||||
|
||||
dispatch = glamor_get_dispatch(glamor_priv);
|
||||
glamor_get_dispatch(glamor_priv);
|
||||
glamor_priv->tick++;
|
||||
dispatch->glFlush();
|
||||
glFlush();
|
||||
glamor_fbo_expire(glamor_priv);
|
||||
glamor_put_dispatch(glamor_priv);
|
||||
if (glamor_priv->state == RENDER_STATE
|
||||
|
|
@ -236,9 +235,9 @@ static void
|
|||
_glamor_block_handler(void *data, OSTimePtr timeout, void *last_select_mask)
|
||||
{
|
||||
glamor_screen_private *glamor_priv = data;
|
||||
glamor_gl_dispatch *dispatch = glamor_get_dispatch(glamor_priv);
|
||||
|
||||
dispatch->glFlush();
|
||||
glamor_get_dispatch(glamor_priv);
|
||||
glFlush();
|
||||
glamor_put_dispatch(glamor_priv);
|
||||
}
|
||||
|
||||
|
|
@ -316,8 +315,6 @@ glamor_init(ScreenPtr screen, unsigned int flags)
|
|||
}
|
||||
#endif
|
||||
|
||||
glamor_gl_dispatch_init(screen, &glamor_priv->_dispatch, gl_version);
|
||||
|
||||
#ifdef GLAMOR_GLES2
|
||||
if (!glamor_gl_has_extension("GL_EXT_texture_format_BGRA8888")) {
|
||||
ErrorF("GL_EXT_texture_format_BGRA8888 required\n");
|
||||
|
|
@ -329,8 +326,7 @@ glamor_init(ScreenPtr screen, unsigned int flags)
|
|||
glamor_gl_has_extension("GL_MESA_pack_invert");
|
||||
glamor_priv->has_fbo_blit =
|
||||
glamor_gl_has_extension("GL_EXT_framebuffer_blit");
|
||||
glamor_priv->_dispatch.glGetIntegerv(GL_MAX_RENDERBUFFER_SIZE,
|
||||
&glamor_priv->max_fbo_size);
|
||||
glGetIntegerv(GL_MAX_RENDERBUFFER_SIZE, &glamor_priv->max_fbo_size);
|
||||
#ifdef MAX_FBO_SIZE
|
||||
glamor_priv->max_fbo_size = MAX_FBO_SIZE;
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in a new issue