mirror of
https://gitlab.freedesktop.org/xorg/xserver.git
synced 2025-12-24 07:50:05 +01:00
glamor: Choose max fbo size by texture + viewport size
The max size of renderbuffers and texture often match by accident, but as we always use textures, we should check for the right flag. Also check for viewport size as this may be lower and we want to render to almost every pixmap. Signed-off-by: Markus Wick <markus@selfnet.de> Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
parent
3778fab34b
commit
8da1e4e2bf
1 changed files with 4 additions and 1 deletions
|
|
@ -316,6 +316,7 @@ glamor_init(ScreenPtr screen, unsigned int flags)
|
|||
{
|
||||
glamor_screen_private *glamor_priv;
|
||||
int gl_version;
|
||||
int max_viewport_size;
|
||||
|
||||
#ifdef RENDER
|
||||
PictureScreenPtr ps = GetPictureScreenIfSet(screen);
|
||||
|
|
@ -406,7 +407,9 @@ glamor_init(ScreenPtr screen, unsigned int flags)
|
|||
epoxy_has_gl_extension("GL_ARB_map_buffer_range");
|
||||
glamor_priv->has_buffer_storage =
|
||||
epoxy_has_gl_extension("GL_ARB_buffer_storage");
|
||||
glGetIntegerv(GL_MAX_RENDERBUFFER_SIZE, &glamor_priv->max_fbo_size);
|
||||
glGetIntegerv(GL_MAX_TEXTURE_SIZE, &glamor_priv->max_fbo_size);
|
||||
glGetIntegerv(GL_MAX_VIEWPORT_DIMS, &max_viewport_size);
|
||||
glamor_priv->max_fbo_size = MIN(glamor_priv->max_fbo_size, max_viewport_size);
|
||||
#ifdef MAX_FBO_SIZE
|
||||
glamor_priv->max_fbo_size = MAX_FBO_SIZE;
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue