[virglrenderer-devel] [PATCH] shader: require GL_OES_texture_storage_multisample_2d_array for 2D MS.

Gert Wollny gert.wollny at collabora.com
Fri Aug 3 18:51:35 UTC 2018


Am Freitag, den 03.08.2018, 16:16 +0100 schrieb Elie Tournier:
> This fix all dEQP-GLES31.functional.shaders.builtin_functions.* tests
> on GLES
> 
> Signed-off-by: Elie Tournier <elie.tournier at collabora.com>
Fixes also 

   dEQP-GLES31.functional.texture.multisample.samples_*

with the exception of 

  dEQP-GLES31.functional.texture.multisample.samples_1.sample_position
  dEQP-GLES31.functional.texture.multisample.samples_2.sample_position

that fail for another reason. 

Reviewed-By: Gert Wollny <gert.wollny at collabora.com> 


> ---
> I tested this patch on top of Gert's branch in order to run GLES31 on
> GLES.
> https://gitlab.collabora.com/virgl-es/virglrenderer/tree/gerddie-enab
> le-gles31-on-gles
> 
>  src/vrend_shader.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/src/vrend_shader.c b/src/vrend_shader.c
> index bc846d1..20db7e1 100644
> --- a/src/vrend_shader.c
> +++ b/src/vrend_shader.c
> @@ -3941,6 +3941,8 @@ static char *emit_header(struct dump_ctx *ctx,
> char *glsl_hdr)
>  {
>     if (ctx->cfg->use_gles) {
>        STRCAT_WITH_RET(glsl_hdr, "#version 300 es\n");
> +      if (ctx->shader_req_bits & SHADER_REQ_SAMPLER_MS)
> +         STRCAT_WITH_RET(glsl_hdr, "#extension
> GL_OES_texture_storage_multisample_2d_array : require\n");
>        PAD_GPU_SHADER5(glsl_hdr);
>        STRCAT_WITH_RET(glsl_hdr, "precision highp float;\n");
>        STRCAT_WITH_RET(glsl_hdr, "precision highp int;\n");


More information about the virglrenderer-devel mailing list