[Mesa-dev] [PATCH] mesa: don't clamp just based on ARB_viewport_array extension
Marek Olšák
maraeo at gmail.com
Wed Feb 14 23:25:38 UTC 2018
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Marek
On Thu, Feb 15, 2018 at 12:22 AM, gurchetansingh at chromium.org
<gurchetansingh at chromium.org> wrote:
> From: Gurchetan Singh <gurchetansingh at chromium.org>
>
> The ARB_viewport_array spec says:
>
> "Dependencies
> OpenGL 1.0 is required.
>
> OpenGL 3.2 or the EXT_geometry_shader4 or ARB_geometry_shader4 extensions
> are required.
>
> This extension is written against the OpenGL 3.2 (Compatibility)
> Specification."
>
> As such, we should ignore it for GLES2 contexts.
>
> Fixes:
> dEQP-GLES2.functional.state_query.integers.viewport_getinteger
> dEQP-GLES2.functional.state_query.integers.viewport_getfloat
>
> on llvmpipe and virgl.
> ---
> src/mesa/main/viewport.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/src/mesa/main/viewport.c b/src/mesa/main/viewport.c
> index fc384909e6..380372772e 100644
> --- a/src/mesa/main/viewport.c
> +++ b/src/mesa/main/viewport.c
> @@ -51,9 +51,8 @@ clamp_viewport(struct gl_context *ctx, GLfloat *x, GLfloat *y,
> * determined by calling GetFloatv with the symbolic constant
> * VIEWPORT_BOUNDS_RANGE (see section 6.1)."
> */
> - if (ctx->Extensions.ARB_viewport_array ||
> - (ctx->Extensions.OES_viewport_array &&
> - _mesa_is_gles31(ctx))) {
> + if ((ctx->Extensions.ARB_viewport_array && !_mesa_is_gles(ctx)) ||
> + (ctx->Extensions.OES_viewport_array && _mesa_is_gles31(ctx))) {
> *x = CLAMP(*x,
> ctx->Const.ViewportBounds.Min, ctx->Const.ViewportBounds.Max);
> *y = CLAMP(*y,
> --
> 2.13.5
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list