Pre-multiplied Alpha Limbo?

This topic contains 1 reply, has 2 voices, and was last updated by  Tobias Hector 5 years, 6 months ago.

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
  • #30872



    Unless I am missing
    something I appear to be caught in somewhat of a limbo situation on a
    particular issue with regards to uploading pre-multiplied alpha pvr
    textures into my texture system.

    I’m targeting the iOS platform & using the OpenGL ES 2.0 API, & specifically for this issue, loading uncompressed formats that I can embed mipmap levels into (e.g. pvr texture header version 2’s OGL_RGBA_4444, OGL_RGB_565, OGL_RGBA_8888, etc.).

    It appears that either:

    • The pvr texture version 3 header, which has the premultiplied flag

      PVRTEX3_PREMULTIPLIED of the flags 

      u32Flags field, doesn’t support the pixel formats I need (it appears to only support compression formats currently).

    • Alternatively using the pvr texture version 2 header (which has the desired OpenGL texture formats I need), it doesn’t appear to have a way to access (in code) whether the texture being loaded has pre-mulitplied alpha or not. 

    How long until uncomressed formats will be added into pvr texture version 3 header’s pixel formats or am I overlooking where they are in the spec/docs?

    &/or is there a way to do it using the pvr texture version 2 header?

    Thank you.


    Hi Codey,

    The PVR3 header doesn’t define enums for uncompressed formats but actually supports a huge range of uncompressed formats through a dynamic system. There are macros in PVRTTexture.h called PVRTGENPIXELIDn (n=1 to 4). These macros will generate an uncompressed pixel identifier for you from up to 4 channel names (lower case, r,g,b,a,l,i or x) and an equivalent number of bits per channel. (e.g. PVRTGENPIXELID4(‘r’,’g’,’b’,’a’,8,8,8,8)).

    This will generate a 64-bit identifier that is API independent. I’d suggest looking through our OpenGL ES tools code or reading up further on the PVR3 file format here:



Viewing 2 posts - 1 through 2 (of 2 total)
You must be logged in to reply to this topic.