On Friday, May 12, 2017 1:31:56 PM PDT Nanley Chery wrote: > On Fri, May 12, 2017 at 08:39:40AM -0700, Kenneth Graunke wrote: > > On Thursday, May 11, 2017 4:46:27 PM PDT Nanley Chery wrote: > > > The DXT1_RGB* format does not provide the correct behavior for OpenGL in > > > the case where color_0 <= color_1. BC1_RGB_UNORM with a alpha set to 1 > > > provides the behavior which matches the spec. > > > > > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100925 > > > Cc: <mesa-sta...@lists.freedesktop.org> > > > Signed-off-by: Nanley Chery <nanley.g.ch...@intel.com> > > > --- > > > src/mesa/drivers/dri/i965/brw_surface_formats.c | 15 ++------------- > > > 1 file changed, 2 insertions(+), 13 deletions(-) > > > > Two things I was worried about: > > > > 1. Where's the swizzling code in this patch? > > > > -> it turns out that we already swizzle A -> 1 when the mesa format > > does not have alpha, but the hardware format does. So, it's > > already there, we don't need any new code :) > > > > 2. Will it impact performance? > > > > -> Might be nice to check...but the compressed data is the same size > > for both formats, so it's just how it interprets it...doubtful. > > > > This will cause recompiles on Ivybridge and older hardware, due > > to the implicit texture swizzling. Sad, but not sure we can do > > anything about it. Could change the default to RGB1 if that's > > better... > > > > Oh, I didn't know about about those recompiles. I'm not sure how they > work.
Ivybridge and earlier don't have native support for texture swizzles (aka the shader channel select / SCS fields). So, we recompile the program and emit MOVs to do the swizzling. We guess XYZW for the initial precompile. Jason had an idea of how to do that without recompiles...perhaps one of these days we'll finally bite the bullet and do that.
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev