mutter/cogl/driver/gl
Robert Bragg 04d943579b gl: bind position attribute to location 0
Full GL treats the position attribute specially and requires that it
must be bound to generic attribute location 0 unlike GLES 2.0 or
GL 3.2 core. We now make sure to unconditionally bind the
cogl_position_in attribute to location 0 before linking any glsl program
in cogl.

For reference the relevant part of the GL 3.0 spec that covers these
semantics is Section 2.7 "Vertex Specification" pg 27

After this change there was one remaining problem in
test-custom-attributes where the test_short_verts() test was using its
own "pos" attribute instead of cogl_position_in and so cogl wasn't able
to ensure it would be bound to location 0.

This updates the test to use cogl_position_in but to work around the
fact that glVertexPointer doesn't support UNSIGNED_SHORT components we
force the test to use the glsl backend by setting a shader snippet on
the pipeline.

https://bugs.freedesktop.org/show_bug.cgi?id=67548

Reviewed-by: Neil Roberts <neil@linux.intel.com>

(cherry picked from commit 992ef7b3b49ebb56adde2133bb36330c04133a3f)
2013-08-19 22:44:45 +01:00
..
gl Add support for per-vertex point sizes 2013-06-07 16:53:29 +01:00
gles Add support for per-vertex point sizes 2013-06-07 16:53:29 +01:00
cogl-attribute-gl-private.h buffer: splits out GL specific code 2013-01-22 17:47:59 +00:00
cogl-attribute-gl.c Don't create a layer when enabling texture coordinate attributes 2013-07-01 13:36:56 +01:00
cogl-buffer-gl-private.h Allow propogation of OOM errors to apps 2013-01-22 17:48:07 +00:00
cogl-buffer-gl.c buffer: Don't set the invalidate hint when requesting read access 2013-02-19 15:03:30 +00:00
cogl-clip-stack-gl-private.h clip-stack: Splits out opengl specific code 2013-01-22 17:47:59 +00:00
cogl-clip-stack-gl.c Separate out CoglPath api into sub-library 2013-08-19 22:44:35 +01:00
cogl-framebuffer-gl-private.h framebuffer: Bind the framebuffer before querying the bits 2013-01-22 17:48:18 +00:00
cogl-framebuffer-gl.c gl: ensure depth isn't masked during clear 2013-03-06 16:45:31 +00:00
cogl-pipeline-fragend-fixed-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-fragend-fixed.c Remove cogl-internal.h 2013-01-22 17:48:17 +00:00
cogl-pipeline-fragend-glsl-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-fragend-glsl.c Use the Wayland embedded linked list implementation instead of BSD's 2013-06-13 13:45:47 +01:00
cogl-pipeline-opengl-private.h pipeline: improve real_blend_enable checks 2013-06-06 21:27:09 +01:00
cogl-pipeline-opengl.c Add support for per-vertex point sizes 2013-06-07 16:53:29 +01:00
cogl-pipeline-progend-fixed-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-progend-fixed.c Add support for per-vertex point sizes 2013-06-07 16:53:29 +01:00
cogl-pipeline-progend-glsl-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-progend-glsl.c gl: bind position attribute to location 0 2013-08-19 22:44:45 +01:00
cogl-pipeline-vertend-fixed-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-vertend-fixed.c Don't generate GLSL for the point size for default pipelines 2013-06-21 14:18:37 +01:00
cogl-pipeline-vertend-glsl-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-vertend-glsl.c Don't generate GLSL for the point size for default pipelines 2013-06-21 14:18:37 +01:00
cogl-texture-2d-gl-private.h texture: remove _cogl_texture_prepare_for_upload 2013-07-29 16:31:44 +01:00
cogl-texture-2d-gl.c texture: remove _cogl_texture_prepare_for_upload 2013-07-29 16:31:44 +01:00
cogl-texture-gl-private.h Move _cogl_texture_get_gl_format to -texture-gl.c 2013-01-22 17:48:17 +00:00
cogl-texture-gl.c Don't set GL_TEXTURE_MAX_LEVEL on GLES 2013-01-25 18:21:09 +00:00
cogl-util-gl-private.h Add the layer's sampler and uniform declarations at the start 2013-02-27 15:53:43 +00:00
cogl-util-gl.c Add the layer's sampler and uniform declarations at the start 2013-02-27 15:53:43 +00:00