[Mesa-dev] [PATCH v3] mesa: Allow query of GL_VERTEX_BINDING_BUFFER

Tapani Pälli tapani.palli at intel.com
Fri Sep 4 04:51:05 PDT 2015


Reviewed-by: Tapani Pälli <tapani.palli at intel.com>

On 08/31/2015 04:04 PM, Marta Lofstedt wrote:
> From: Marta Lofstedt <marta.lofstedt at intel.com>
>
> According to OpenGL ES 3.1 specification table : 20.2 and
> OpenGL specification 4.4 table 23.4. The glGetIntegeri_v
> functions should report the name  of the buffer bound
> when called with GL_VERTEX_BINDING_BUFFER.
>
> Signed-off-by: Marta Lofstedt <marta.lofstedt at intel.com>
> ---
>   src/mesa/main/get.c | 8 ++++++++
>   1 file changed, 8 insertions(+)
>
> diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
> index 4855187..d5df530 100644
> --- a/src/mesa/main/get.c
> +++ b/src/mesa/main/get.c
> @@ -1992,6 +1992,14 @@ find_value_indexed(const char *func, GLenum pname, GLuint index, union value *v)
>         v->value_int = ctx->Array.VAO->VertexBinding[VERT_ATTRIB_GENERIC(index)].Stride;
>         return TYPE_INT;
>
> +   case GL_VERTEX_BINDING_BUFFER:
> +      if (ctx->API == API_OPENGLES2 && ctx->Version < 31)
> +         goto invalid_enum;
> +      if (index >= ctx->Const.Program[MESA_SHADER_VERTEX].MaxAttribs)
> +         goto invalid_value;
> +      v->value_int = ctx->Array.VAO->VertexBinding[VERT_ATTRIB_GENERIC(index)].BufferObj->Name;
> +      return TYPE_INT;
> +
>      /* ARB_shader_image_load_store */
>      case GL_IMAGE_BINDING_NAME: {
>         struct gl_texture_object *t;
>


More information about the mesa-dev mailing list