[Mesa-dev] [RFC 0/5] nir: Separate Textures and Samplers

Kenneth Graunke kenneth at whitecape.org
Wed Nov 25 16:21:00 PST 2015


On Tuesday, November 03, 2015 01:25:59 PM Jason Ekstrand wrote:
> Separate textures and samplers are something that a lot of hardware
> supports.  Our hardware in particular has done this ever since the original
> i965 chips.  Part of this is because DX has made it a requirement for some
> time now.  GL allows you to expose it sort-of but weasel-words it enough
> that you can do it entirely at the API level and that's how we handle it
> today.  I've been doing some thinking lately about how we could expose this
> (if we wanted to) in the compiler.  This patch series is a first crack at
> doing that.
> 
> Key design points
> 
>  1) There is no "combine" instruction; nir_tex_instr just takes a deref for
>     each of sampler and texture.
>  2) It's optional (just make the texture deref NULL)
>  3) The lowering pass sets both sampler and texture indices so that
>     backends don't have to make a distinction between whether you have a
>     separate texture or not
> 
> There is no API stuff here, just compiler stuff for the people who may or
> may not be interested.
> 
> Happy Bikeshedding!
> 
> --Jason
> 
> Jason Ekstrand (5):
>   nir: Separate texture from sampler in nir_tex_instr
>   i965/fs: Separate the sampler from the surface in generate_tex
>   i965/fs: Plumb separate surfaces and samplers through from NIR
>   i965/vec4: Separate the sampler from the surface in generate_tex
>   i965/vec4: Plumb separate surfaces and samplers through from NIR

I had a couple nits here and there, and I'd like to see a respin of
patch 3 on top of a patch that adds an enum for logical texturing
sources.  But other than that, the series is:

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20151125/c290be51/attachment.sig>


More information about the mesa-dev mailing list