Imagination PowerVR SDK Blog

Pre-multiplied or not pre-multiplied, that is the question


#1

Another quick question:
Which is better to use for the pvrtc format, premultiplied alpha, or not premultiplied alpha?


#2

Using premultiplied alpha for textures has several advantages for any compression format, and is generally recommended.


#3

But what are the advantages exactly? Faster? or better quality?
I experimented using the pvr texture tool on a sprite sheet. The best quality I could get was if I bleeded the orginal texture without premultiplying. If I pre multiply the alpha there are more artifacts.


#4

Generally, premulitpled alpha is preferred, because when interpolating values or when filtering, the calculated values will be undesired: https://developer.nvidia.com/content/alpha-blending-pre-or-not-pre

Depending on the source image, the results of texture compression can vary, and experimenting to find the best solution for each case is sometimes necessary.


#5

Here’s another excellent write-up on pre-multiplied alpha. Some of the benefits highlighted specifically relate to image compression quality:

(NOTE: The forums are munging this URL, so just webseardch “premultiplied alpha tom forsyth” and the link will come right up.