Reviewed-by: Marek Olšák <marek.ol...@amd.com> Marek
On Mon, Aug 24, 2015 at 10:37 PM, Brian Paul <bri...@vmware.com> wrote: > 1. Try to choose R8G8B8A8 unorm/srgb formats before other orders in an > effort to try to match component ordering for UINT/SINT/etc. > > 2. If we can't get a format such as PIPE_FORMAT_A16_UNORM, try > PIPE_FORMAT_R16G16B16A16_UNORM before shallower formats. > --- > src/mesa/state_tracker/st_format.c | 20 +++++++++++--------- > 1 file changed, 11 insertions(+), 9 deletions(-) > > diff --git a/src/mesa/state_tracker/st_format.c > b/src/mesa/state_tracker/st_format.c > index db7b5b7..a8fa6b1 100644 > --- a/src/mesa/state_tracker/st_format.c > +++ b/src/mesa/state_tracker/st_format.c > @@ -943,23 +943,23 @@ struct format_mapping > > > #define DEFAULT_RGBA_FORMATS \ > - PIPE_FORMAT_B8G8R8A8_UNORM, \ > PIPE_FORMAT_R8G8B8A8_UNORM, \ > + PIPE_FORMAT_B8G8R8A8_UNORM, \ > PIPE_FORMAT_A8R8G8B8_UNORM, \ > PIPE_FORMAT_A8B8G8R8_UNORM, \ > 0 > > #define DEFAULT_RGB_FORMATS \ > - PIPE_FORMAT_B8G8R8X8_UNORM, \ > PIPE_FORMAT_R8G8B8X8_UNORM, \ > + PIPE_FORMAT_B8G8R8X8_UNORM, \ > PIPE_FORMAT_X8R8G8B8_UNORM, \ > PIPE_FORMAT_X8B8G8R8_UNORM, \ > PIPE_FORMAT_B5G6R5_UNORM, \ > DEFAULT_RGBA_FORMATS > > #define DEFAULT_SRGBA_FORMATS \ > - PIPE_FORMAT_B8G8R8A8_SRGB, \ > PIPE_FORMAT_R8G8B8A8_SRGB, \ > + PIPE_FORMAT_B8G8R8A8_SRGB, \ > PIPE_FORMAT_A8R8G8B8_SRGB, \ > PIPE_FORMAT_A8B8G8R8_SRGB, \ > 0 > @@ -1050,8 +1050,8 @@ static const struct format_mapping format_map[] = { > /* basic Alpha formats */ > { > { GL_ALPHA12, GL_ALPHA16, 0 }, > - { PIPE_FORMAT_A16_UNORM, PIPE_FORMAT_A8_UNORM, > - DEFAULT_RGBA_FORMATS } > + { PIPE_FORMAT_A16_UNORM, PIPE_FORMAT_R16G16B16A16_UNORM, > + PIPE_FORMAT_A8_UNORM, DEFAULT_RGBA_FORMATS } > }, > { > { GL_ALPHA, GL_ALPHA4, GL_ALPHA8, GL_COMPRESSED_ALPHA, 0 }, > @@ -1061,7 +1061,8 @@ static const struct format_mapping format_map[] = { > /* basic Luminance formats */ > { > { GL_LUMINANCE12, GL_LUMINANCE16, 0 }, > - { PIPE_FORMAT_L16_UNORM, PIPE_FORMAT_L8_UNORM, DEFAULT_RGB_FORMATS } > + { PIPE_FORMAT_L16_UNORM, PIPE_FORMAT_R16G16B16A16_UNORM, > + PIPE_FORMAT_L8_UNORM, DEFAULT_RGB_FORMATS } > }, > { > { 1, GL_LUMINANCE, GL_LUMINANCE4, GL_LUMINANCE8, 0 }, > @@ -1072,8 +1073,8 @@ static const struct format_mapping format_map[] = { > { > { GL_LUMINANCE12_ALPHA4, GL_LUMINANCE12_ALPHA12, > GL_LUMINANCE16_ALPHA16, 0}, > - { PIPE_FORMAT_L16A16_UNORM, PIPE_FORMAT_L8A8_UNORM, > - DEFAULT_RGBA_FORMATS } > + { PIPE_FORMAT_L16A16_UNORM, PIPE_FORMAT_R16G16B16A16_UNORM, > + PIPE_FORMAT_L8A8_UNORM, DEFAULT_RGBA_FORMATS } > }, > { > { 2, GL_LUMINANCE_ALPHA, GL_LUMINANCE6_ALPHA2, GL_LUMINANCE8_ALPHA8, 0 > }, > @@ -1088,7 +1089,8 @@ static const struct format_mapping format_map[] = { > /* basic Intensity formats */ > { > { GL_INTENSITY12, GL_INTENSITY16, 0 }, > - { PIPE_FORMAT_I16_UNORM, PIPE_FORMAT_I8_UNORM, DEFAULT_RGBA_FORMATS } > + { PIPE_FORMAT_I16_UNORM, PIPE_FORMAT_R16G16B16A16_UNORM, > + PIPE_FORMAT_I8_UNORM, DEFAULT_RGBA_FORMATS } > }, > { > { GL_INTENSITY, GL_INTENSITY4, GL_INTENSITY8, > -- > 1.9.1 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev