[Mesa-dev] [PATCH 4/4] i965: Enable ARB_texture_stencil8 and OES_texture_stencil8 on Gen8+.
Thomas Helland
thomashelland90 at gmail.com
Tue Apr 26 15:33:24 UTC 2016
I guess you should also update GL4.4 section in GL3.txt.
And add the extension to the release notes.
Either a follow up patch or squashed into this one is fine with me.
Regards,
Thomas
On Apr 26, 2016 12:25, "Kenneth Graunke" <kenneth at whitecape.org> wrote:
>
> Stencil texturing is required by ES 3.1. Apparently we never actually
> turned it on. Do that now. Also turn on the desktop extension.
>
> Fixes nine dEQP-GLES31.functional tests:
>
> stencil_texturing.format.stencil_index8_2d
> texture.border_clamp.formats.stencil_index8.nearest_size_pot
> texture.border_clamp.formats.stencil_index8.nearest_size_npot
> texture.border_clamp.formats.stencil_index8.gather_size_pot
> texture.border_clamp.formats.stencil_index8.gather_size_npot
> texture.border_clamp.unused_channels.stencil_index8
> state_query.internal_format.renderbuffer.stencil_index8_samples
> state_query.internal_format.texture_2d_multisample.stencil_index8_samples
>
state_query.internal_format.texture_2d_multisample_array.stencil_index8_samples
>
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
> ---
> src/mesa/drivers/dri/i965/brw_meta_stencil_blit.c | 7 -------
> src/mesa/drivers/dri/i965/brw_surface_formats.c | 1 +
> src/mesa/drivers/dri/i965/intel_extensions.c | 1 +
> 3 files changed, 2 insertions(+), 7 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_meta_stencil_blit.c
b/src/mesa/drivers/dri/i965/brw_meta_stencil_blit.c
> index 7e04248..71ab7be 100644
> --- a/src/mesa/drivers/dri/i965/brw_meta_stencil_blit.c
> +++ b/src/mesa/drivers/dri/i965/brw_meta_stencil_blit.c
> @@ -436,12 +436,6 @@ brw_meta_stencil_blit(struct brw_context *brw,
> GLenum target;
>
> _mesa_meta_fb_tex_blit_begin(ctx, &blit);
> - /* XXX: Pretend to support stencil textures so _mesa_base_tex_format()
> - * returns a valid format. When we properly support the extension, we
> - * should remove this.
> - */
> - assert(ctx->Extensions.ARB_texture_stencil8 == false);
> - ctx->Extensions.ARB_texture_stencil8 = true;
>
> drawFb = ctx->Driver.NewFramebuffer(ctx, 0xDEADBEEF);
> if (drawFb == NULL) {
> @@ -484,7 +478,6 @@ brw_meta_stencil_blit(struct brw_context *brw,
> _mesa_DrawArrays(GL_TRIANGLE_FAN, 0, 4);
>
> error:
> - ctx->Extensions.ARB_texture_stencil8 = false;
> _mesa_meta_fb_tex_blit_end(ctx, target, &blit);
> _mesa_meta_end(ctx);
>
> diff --git a/src/mesa/drivers/dri/i965/brw_surface_formats.c
b/src/mesa/drivers/dri/i965/brw_surface_formats.c
> index c65f0d3..16667b9 100644
> --- a/src/mesa/drivers/dri/i965/brw_surface_formats.c
> +++ b/src/mesa/drivers/dri/i965/brw_surface_formats.c
> @@ -704,6 +704,7 @@ brw_init_surface_formats(struct brw_context *brw)
> ctx->TextureFormatSupported[MESA_FORMAT_Z24_UNORM_X8_UINT] = true;
> ctx->TextureFormatSupported[MESA_FORMAT_Z_FLOAT32] = true;
> ctx->TextureFormatSupported[MESA_FORMAT_Z32_FLOAT_S8X24_UINT] = true;
> + ctx->TextureFormatSupported[MESA_FORMAT_S_UINT8] = true;
>
> /* Benchmarking shows that Z16 is slower than Z24, so there's no
reason to
> * use it unless you're under memory (not memory bandwidth) pressure.
> diff --git a/src/mesa/drivers/dri/i965/intel_extensions.c
b/src/mesa/drivers/dri/i965/intel_extensions.c
> index 907f24f..820d573 100644
> --- a/src/mesa/drivers/dri/i965/intel_extensions.c
> +++ b/src/mesa/drivers/dri/i965/intel_extensions.c
> @@ -368,6 +368,7 @@ intelInitExtensions(struct gl_context *ctx)
>
> if (brw->gen >= 8) {
> ctx->Extensions.ARB_stencil_texturing = true;
> + ctx->Extensions.ARB_texture_stencil8 = true;
> }
>
> if (brw->gen >= 9) {
> --
> 2.8.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160426/d20a034f/attachment.html>
More information about the mesa-dev
mailing list