[Mesa-dev] [V3 PATCH 2/8] mesa: Change 4 color component ubyte formats

Brian Paul brianp at vmware.com
Fri Jan 17 13:25:19 PST 2014


On 01/17/2014 12:41 PM, Mark Mueller wrote:
>
>
>
> On Fri, Jan 17, 2014 at 8:58 AM, Brian Paul <brianp at vmware.com
> <mailto:brianp at vmware.com>> wrote:
>
>     On 01/17/2014 03:45 AM, Mark Mueller wrote:
>
>         Change all 4 color component unsigned byte formats to meet spec:
>            s/MESA_FORMAT_RGBA8888\b/MESA___FORMAT_ABGR_UNORM8/g
>            s/MESA_FORMAT_RGBA8888_REV\b/__MESA_FORMAT_RGBA_UNORM8/g
>            s/MESA_FORMAT_ARGB8888\b/MESA___FORMAT_BGRA_UNORM8/g
>            s/MESA_FORMAT_ARGB8888_REV\b/__MESA_FORMAT_ARGB_UNORM8/g
>            s/MESA_FORMAT_RGBX8888\b/MESA___FORMAT_XBGR_UNORM8/g
>            s/MESA_FORMAT_RGBX8888_REV\b/__MESA_FORMAT_RGBX_UNORM8/g
>            s/MESA_FORMAT_XRGB8888\b/MESA___FORMAT_BGRX_UNORM8/g
>            s/MESA_FORMAT_XRGB8888_REV\b/__MESA_FORMAT_XRGB_UNORM8/g
>
>
>
>     I'm not sure this is right.  If you look at the existing code such
>     as src/mesa/main/format_{un}pack.__c you'll see that these formats
>     are treated as packed formats, not arrays.
>
> Ah. Array formats are really rare with OGL, that was unexpected but now
> really ancient issues with memory throughput optimization are surfacing.
> Those were the days.
>
> Thus Array Types would only include the much smaller group of all 32
> bit-per-component formats, and formats with an odd number of 8 or 16 bit
> components. Right?

For the time being, I think the mesa formats which are packed should 
stay packed and arrays stay as arrays.  Otherwise, the 
format_{un}pack.c, texstore, and s_texfetch.c code would need to be 
changed accordingly.

Over time, we could probably migrate some of the packed formats to being 
array formats.


> So the naming convention would be a derivation of
> MESA_FORMAT_R8G8B8A8_UNORM for these.

For the packed formats, yes.  I believe that was the consensus from the 
thread 3 days ago.

-Brian



More information about the mesa-dev mailing list