I never used PNG, but one feature of it is, that it can save alpha masked parts without a needed background, which makes them easier to create, or better said, the quality is better without manual postprocessing of the texture.

Otherwise, I would always prefer TGA because it is more common for game engines, but maybe that oppinion is driven because I am used to it.

TGA and PNG have the huge advantage, that they are losless. DDS has huge artifacts when it comes to smooth color transitions, like abstract gradients (e.g. from white to grey on big textures). They are best suited for structured texture with lots of detail and colors, but suck in special cases like gradients.

Alpha is treated seperately from RGB channels in the DDS compression process, but the alpha mask sucks as well on huge transitions, like going from 100% to 0% alpha over a long distance. Another thing is that blocks of 4x4 pixels are compressed, could produce artifacts in border cases.

So, in cases where dds compression sucks, you should always use lossless formats like tga or png.

But in the end it highly depends on your textures and how they "are" and how you --preceive-- the compression artifacts. If you dont like them - use tga/png.

Another case is cutout alpha, in that case I would always advise to use DXT1 (DDS) compression, unless the RGB compression sucks again wink