[Mesa-dev] [PATCH 3/3] softpipe: enable ARB_texture_view

Ilia Mirkin imirkin at alum.mit.edu
Tue May 12 19:45:14 PDT 2015


On Tue, May 12, 2015 at 10:36 PM,  <sroland at vmware.com> wrote:
> From: Roland Scheidegger <sroland at vmware.com>
>
> Some bits were already there for texture views but some were missing.
> In particular for cube map views things needed to change a bit.
> For simplicity I ended up removing the separate face addr bit (just use
> the z bit) - cube arrays didn't use it already, so just follow the same
> logic there. (In theory using separate bits could allow for better hash
> function but I don't think anyone ever did some measurements of that so
> probably not worth the trouble, if we'd reintroduce it we'd certainly
> wanted to use the same logic for cube arrays and cube maps.)
> Also extend the seamless cube sampling to cube arrays - as there were no
> piglit failures before this is apparently untested, but things now generally
> work quite the same for cube textures and cube array textures so there
> hopefully shouldn't be any trouble...
>
> 49 new piglits, 47 pass, 2 fail (both due to fake multisampling).
> ---
>  docs/GL3.txt                                     |   2 +-
>  src/gallium/drivers/softpipe/sp_screen.c         |   3 +-
>  src/gallium/drivers/softpipe/sp_state_sampler.c  |  12 +-
>  src/gallium/drivers/softpipe/sp_tex_sample.c     | 243 +++++++++++++----------
>  src/gallium/drivers/softpipe/sp_tex_tile_cache.c |  11 +-
>  src/gallium/drivers/softpipe/sp_tex_tile_cache.h |   4 +-
>  6 files changed, 150 insertions(+), 125 deletions(-)
>
> diff --git a/docs/GL3.txt b/docs/GL3.txt
> index 5590fea..32b7809 100644
> --- a/docs/GL3.txt
> +++ b/docs/GL3.txt
> @@ -169,7 +169,7 @@ GL 4.3, GLSL 4.30:
>    GL_ARB_texture_buffer_range                          DONE (nv50, nvc0, i965, r600, radeonsi, llvmpipe)
>    GL_ARB_texture_query_levels                          DONE (all drivers that support GLSL 1.30)
>    GL_ARB_texture_storage_multisample                   DONE (all drivers that support GL_ARB_texture_multisample)
> -  GL_ARB_texture_view                                  DONE (i965, nv50, nvc0)
> +  GL_ARB_texture_view                                  DONE (i965, nv50, nvc0, llvmpipe)
>    GL_ARB_vertex_attrib_binding                         DONE (all drivers)

Trivial comments:
(a) this probably belongs in the llvmpipe change, and you can add softpipe here
(b) may be a good idea to update the relnotes as well

I did the original texture view enablement in gallium, and it really
should be as simple as looking in view->target instead of res->target.
Surprised that these changes were so large.

Cheers,

  -ilia


More information about the mesa-dev mailing list