Текстуры - это коллекции одного или нескольких изображений. Это означает, что текстура может быть представлена TGA или PNG, но ни один из форматов не способен отображать все возможные свойства текстур. Почему?
Потому что каждый может содержать только одно изображение. Здесь нет мипмапов. 3D-текстуры невозможны. Нет массива текстур. Нет кубов. Каждый из этих файлов представляет собой одно изображение 2D. Они могут быть частью текстуры, но если вы не используете mipmapping (и я настоятельно рекомендую не использовать mipmaps, если у вас нет особых потребностей), один файл изображения в этих форматах не может быть текстурой.
Это хорошие форматы изображений, но они создают плохие форматы текстур .
DDS является лидером форматов текстур, потому что он на самом деле поддерживает потребности текстур. Он поддерживает MIPMAP и CubeMAP. Поддерживает 3D текстуры. DDSv10 поддерживает текстуры массива. Вы можете упаковать одну текстуру в DDS так, как вы не смогли бы использовать PNG или TGA.
DDS поддерживает несжатые и сжатые данные текстуры. Пока формат сжатых текстур является одним из форматов текстур DXT / BC.
PKM полезен для упаковки сжатых ETC1 изображений, но, как и в PNG, он не поддерживает фактические функции текстур.
Файлы PVR кажутся мобильным эквивалентом DDS (хотя, почему они не могли просто использовать DDS, я не знаю). Они поддерживают различные методы сжатия, но им не хватает продвинутых функций DDSv10, таких как текстуры массива, а также поддержка 3D-текстур.
Таким образом, DDS выигрывает в плане всесторонней поддержки текстур.