Truevision TGA (.tga)
Truevision СтандартTruevision TGA (Targa) е историческият растърен графичен формат, създаден за новаторските видеокадриращи платки TARGA, превръщайки се в дефинитивния формат за 3D текстури и видеоигрови активи от 90-те и 2000-те години.
Конвертиране на TGA към PNG
Безплатен конвертор от TGA към PNG в браузъра. Конвертирайте файлове незабавно на вашето устройство.
Инспектиране и метаданни
Операционните системи и файловите анализатори идентифицират TGA файлове чрез проверка на началната двоична байтова последователност:
Байтов подпис на хедъра (Magic Bytes)
Операционните системи и файловите анализатори идентифицират TGA файлове чрез проверка на началната двоична байтова последователност:
HEX ПОДПИС (ОФСЕТ 0):
00 00 02 00 00 00 00 00ASCII ПРЕДСТАВЯНЕ: ........ (Footer: TRUEVISION-XFILE)
Стандартизация: Truevision TGA File Format Specification v2.0
Технически спецификации
| Контейнерна архитектура | 18-byte fixed header followed by image ID, color map, raster pixel data, and optional v2.0 footer |
| Компресия | Uncompressed raw scanlines or lossless packet-based Run-Length Encoding (RLE) |
| Поредност на байтовете (Endianness) | Little-Endian (Intel x86) |
| Цветови пространства | Device RGB |
| Канали и структура | 8-bit grayscale, 16-bit RGB (5-5-5-1), 24-bit RGB, or 32-bit RGBA with alpha |
| Максимални размери | 65,535 x 65,535 pixels (16-bit dimension fields) |
| Прозрачност | Full 8-bit alpha channel transparency (in 32-bit mode) or 1-bit alpha (in 16-bit mode) |
| Стрийминг и прогресивно зареждане | Sequential scanline streaming; supports top-to-bottom or bottom-to-top orientation |
Техническа сравнителна матрица: TGA спрямо конкуренти
| Технически атрибут | TGA (Текущ) | PNG | BMP | DDS |
|---|---|---|---|---|
| Употреба за текстури в игри | Универсален застаряващ стандарт от 90-те и 2000-те | Модерни 2D потребителски интерфейси и уеб активи | Наследен файлов битмап на Windows | Модерен компресиран GPU формат на DirectX |
| Поддръжка на алфа канал | Чист 8-битов алфа канал (32-битов режим) | Чист 8-битов алфа канал | Ограничен 32-битов алфа канал | Компресиран с DXT/BC алфа канал |
| Алгоритъм за компресия | Некомпресиран или пакетен RLE | Беззагубна Deflate (~60% по-малък) | Некомпресиран / RLE | Директна блок компресия за GPU (BC1-BC7) |
| Местоположение на подписа | 26-байтов долен колонтитул ('TRUEVISION-XFILE.') | Заглавна част (хедър) на байт 0 ('‰PNG....') | Заглавна част на байт 0 ('BM') | Заглавна част на байт 0 ('DDS ') |
Често срещани режими на повреда и ръководство за хекс възстановяване
Изображението се рендрира с главата надолу или огледално хоризонтално.
Първопричина: Бийтовете на дескриптора на изображението (битове 4 и 5 в байт 17) са погрешно прочетени или инвертирани от декодера.
Възстановяване: Превключете флаговете за вертикално/хоризонтално обръщане или конвертирайте с помощта на File2File TGA Converter.
Анализ на сигурността и вектори на атака към парсера
Декодерите на TGA обработват базирани на пакети RLE потоци, където деформираните бройки на поредиците (run-length) могат да задействат запис извън границите на купа (heap writes).
Известни вектори на атака
- Дължината на RLE пакета надвишава границата на буфера за целевия растерен ред.
- Препълване на буфера при четене на записи от цветовата палитра, надвишаващи декларираната дълбочина на палитрата.
- Целочислено препълване по време на разпределението на паметта в буфера width * height * (bpp / 8).
Защитни добри практики:
Исторически произход и етапи
Основни предимства и плюсове
- Изключително опростената архитектура за декодиране позволява директно зареждане в паметта за текстури на графичния процесор с минимално натоварване на CPU.
- Надеждната поддръжка на 32-битов RGBA алфа канал го направи фаворит в индустрията за текстури, спрайтове и декали във видеоигрите.
- Поддържа както некомпресирана, така и лека беззагубна RLE компресия.
Технически ограничения и минуси
- По-големи файлови отпечатъци в сравнение с модерни компресирани формати за текстури като DDS, KTX2 или PNG.
- Липса на нативно управление на цветовите профили (няма вградени ICC профили).
- Оригиналните v1.0 TGA файлове нямат стандартизиран магически байт на байт 0 (идентифицират се по полета в хедъра и долния колонтитул).
Интересни технически факти
- TGA е създаден за заснемане на телевизионни видео кадри на IBM PC, преди стандартните компютърни монитори дори да могат да показват 24-битов цвят.
- TGA 2.0 файловете са уникални, защото техният магически подпис ('TRUEVISION-XFILE.') се съхранява в самия край на файла вместо в началото.
- Почти всеки голям 3D игрален двигател от 90-те години, от id Tech до Unreal Engine, е зареждал текстурни активи директно от .TGA файлове.
Често задавани технически въпроси
Защо разработчиците на игри харесваха TGA формата?
Защото TGA файловете бяха некомпресирани или използваха опростен RLE метод, което позволяваше на двигателите на игрите да зареждат 32-битови текстури и алфа прозрачност директно във видео паметта без бавна декомпресия.
Как да разпозная TGA файл без магически байтове на байт 0?
Модерните TGA 2.0 файлове завършват с ASCII низа 'TRUEVISION-XFILE.' в последните 26 байта на файла.
Как мога да конвертирам TGA в PNG?
Можете да конвертирате TGA текстури във висококачествени PNG или JPG изображения директно в браузъра си с помощта на File2File.app без никакво предаване на данни.