diff options
author | Lukas F. Hartmann <lukas@mntmn.com> | 2018-05-15 21:51:56 +0200 |
---|---|---|
committer | Adam Jackson <ajax@redhat.com> | 2018-05-16 13:57:29 -0400 |
commit | 7437b6dbdee050f8ebb3a79b9077d051c91880c3 (patch) | |
tree | 6a67bd35309d5b46d94ae8177c6b182c92fb0691 /glamor/glamor_prepare.c | |
parent | 3ab32a537840c6e6d6228b4ba62f98fbf5224f8a (diff) |
glamor_init: clamp GLSL to 120 if platform doesn't have instanced arrays
Hi,
I upgraded Xwayland and the assorted libraries from git masters today,
and noticed that glamor wouldn't work anymore on i.MX6/etnaviv. The
error was:
No provider of glVertexAttribDivisor found. Requires one of:
Desktop OpenGL 3.3
OpenGL ES 3.0
GL extension "GL_ANGLE_instanced_arrays"
GL extension "GL_ARB_instanced_arrays"
GL extension "GL_EXT_instanced_arrays"
GL extension "GL_NV_instanced_arrays"
The problem is that etnaviv offers GLSL 140 on GL 2.1 and glamor
rendering assumes that glVertexAttribDivisor() is always available on
GLSL>=130, which is not the case here. Forcing GLSL 120 makes glamor
work fine again on this platform. After chatting with ajax in
#xorg-devel, the following solution was proposed.
This is my first time of submitting a patch, so please excuse me and
advise if I'm doing it wrong ;)
Cheers
Lukas (mntmn)
Reviewed-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'glamor/glamor_prepare.c')
0 files changed, 0 insertions, 0 deletions