[Mesa-dev] [PATCH v2] mesa: allow multisampled format info to be returned on GLES 3.1

Timothy Arceri t_arceri at yahoo.com.au
Wed Feb 17 23:18:51 UTC 2016


On Wed, 2016-02-17 at 14:51 -0500, Ilia Mirkin wrote:
> The restriction on multisampled integer texture formats only applies
> to
> GLES 3.0, so don't apply it to GLES 3.1 contexts. This fixes a slew
> of
> 
> dEQP-GLES31.functional.state_query.internal_format.*
> 
> tests, which now all pass.
> 
> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>

Looks good, thanks.

Reviewed-by: Timothy Arceri <timothy.arceri at collabora.com>


> Cc: Marta Lofstedt <marta.lofstedt at intel.com>
> ---
> 
> v1 -> v2: change the way we check for a gles3.0 context, add comment
> about the restriction being removed in gles 3.1
> 
>  src/mesa/main/formatquery.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/src/mesa/main/formatquery.c
> b/src/mesa/main/formatquery.c
> index 85f7b6b..816f12b 100644
> --- a/src/mesa/main/formatquery.c
> +++ b/src/mesa/main/formatquery.c
> @@ -131,11 +131,14 @@ _mesa_GetInternalformativ(GLenum target, GLenum
> internalformat, GLenum pname,
>              internalformat, buffer);
>        break;
>     case GL_NUM_SAMPLE_COUNTS: {
> -      if (_mesa_is_gles3(ctx) &&
> _mesa_is_enum_format_integer(internalformat)) {
> +      if ((ctx->API == API_OPENGLES2 && ctx->Version == 30) &&
> +          _mesa_is_enum_format_integer(internalformat)) {
>           /* From GL ES 3.0 specification, section 6.1.15 page 236:
> "Since
>            * multisampling is not supported for signed and unsigned
> integer
>            * internal formats, the value of NUM_SAMPLE_COUNTS will be
> zero
>            * for such formats.
> +          *
> +          * Such a restriction no longer exists in GL ES 3.1.
>            */
>           buffer[0] = 0;
>           count = 1;


More information about the mesa-dev mailing list