[Mesa-dev] [PATCH] vbo: disable primitive restart when GL >= 4.5

Ian Romanick idr at freedesktop.org
Thu Oct 6 23:28:11 UTC 2016


On 10/06/2016 06:22 AM, Martina Kollarova wrote:
> The OpenGL 4.5 spec updated the section on primitive restart, and now it
> doesn't have to be performed on drawing commands not taking a parameter,
> regardless of whether PRIMITIVE_RESTART_FIXED_INDEX is enabled or not.
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98106
> Signed-off-by: Martina Kollarova <martina.kollarova at intel.com>
> ---
>  src/mesa/vbo/vbo_exec_array.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c
> index 46543f8..cf1ba13 100644
> --- a/src/mesa/vbo/vbo_exec_array.c
> +++ b/src/mesa/vbo/vbo_exec_array.c
> @@ -423,7 +423,7 @@ vbo_draw_arrays(struct gl_context *ctx, GLenum mode, GLint start,
>  
>     /* Implement the primitive restart index */
>     if (ctx->Array.PrimitiveRestart && !ctx->Array.PrimitiveRestartFixedIndex &&
> -       ctx->Array.RestartIndex < count) {
> +       ctx->Version < 45 && ctx->Array.RestartIndex < count) {

I'm really unsure about having this version check.  I believe that this
change was intended to be a clarification because several drivers /
hardware combinations never supported it.  I'll have to dig back through
Khronos bugs and notes, but I think this should universally apply.

>        GLuint primCount = 0;
>  
>        if (ctx->Array.RestartIndex == start) {
> 



More information about the mesa-dev mailing list