Изображение TGA (.tga)

Спецификация Стандарт

Truevision TGA (Targa) - это исторический формат растровой графики, созданный для революционных плат видеозахвата TARGA, ставший определяющим форматом 3D-текстур и видеоигровых ассистов в 1990-х и 2000-х годах.

Конвертировать из TGA в PNG

Бесплатный конвертер из TGA в PNG прямо в браузере. Конвертируйте файлы мгновенно на вашем устройстве.

Анализ и метаданные

Операционные системы и анализаторы файлов идентифицируют файлы TGA по начальной двоичной последовательности байтов:

Выберите или перетащите файлы сюда

100% конфиденциальное преобразование в браузере - файлы никогда не покидают ваше устройство

или вставьте Ctrl+V
Гарантия конфиденциальности без передачи по сети: 0 байт загружено на внешние серверы. Вся обработка выполняется локально в песочнице вашего браузера.

Сигнатура заголовка на уровне байтов (Magic Bytes)

Операционные системы и анализаторы файлов идентифицируют файлы TGA по начальной двоичной последовательности байтов:

HEX-СИГНАТУРА (СМЕЩЕНИЕ 0):

00 00 02 00 00 00 00 00

ПРЕДСТАВЛЕНИЕ ASCII: ........ (Нижний колонтитул: TRUEVISION-XFILE)

Стандартизация: Спецификация формата файлов Truevision TGA v2.0

Технические спецификации

Архитектура контейнераФиксированный заголовок длиной 18 байт, за которым следует идентификатор изображения, палитра цветов, данные растровых пикселей и опциональный нижний колонтитул версии 2.0
СжатиеНесжатые сырые строки сканирования или пакетное кодирование длин серий (RLE) без потерь
Порядок байтов (Endianness)Прямой порядок байтов (Little-Endian) (Intel x86)
Цветовые пространстваУстройство RGB
Каналы и структура8-битный оттенок серого, 16-битный RGB (5-5-5-1), 24-битный RGB или 32-битный RGBA с альфа-каналом
Макс. габариты65 535 x 65 535 пикселей (16-битные поля размеров)
ПрозрачностьПолная 8-битная прозрачность альфа-канала (в 32-битном режиме) или 1-битная альфа (в 16-битном режиме)
Потоковая передача и прогрессивная загрузкаПотоковая передача строк сканирования; поддерживает ориентацию сверху вниз или снизу вверх

Техническая матрица сравнения: TGA против конкурентов

Технический атрибутTGA (Текущий)PNGBMPDDS
Использование для текстур в играхУниверсальный устаревший стандарт 1990 - 2000-х годовСовременный 2D UI и веб-ассистыУстаревшая рабстравая графика 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 ')

Типичные режимы повреждения и руководство по восстановлению в HEX

Изображение отображается перевернутым вверх дном или зеркально отраженным по горизонтали.

Первопричина: Биты дескриптора изображения (биты 4 и 5 в байте 17) неправильно прочитаны или инвертированы декодером.

Восстановление: Переключите флаги вертикального/горизонтального отражения или конвертируйте файл с помощью конвертера TGA от File2File.

Анализ безопасности и векторы атак на парсер

Декодеры TGA обрабатывают пакетные потоки RLE, где искаженные значения длины серий могут вызывать запись в кучу за пределами допустимых границ.

Известные векторы атак

  • Длина пакета RLE превышает границу буфера целевой строки сканирования.
  • Переполнение буфера при чтении элементов цветовой палитры, превышающих заявленную глубину палитры.
  • Переполнение целых чисел при выделении буфера памяти ширина * высота * (глубина пикселя / 8).

Защитные лучшие практики: Применяйте строгую проверку границ для каждой строки сканирования при распаковке пакетов RLE.

Исторические истоки и вехи

1998Игра Half-Life от Valve и Quake II от id Software популяризируют TGA в качестве стандартного формата текстурных ассистов для видеоигр.
1989Truevision выпускает спецификацию формата файлов TGA v2.0, добавляя стандартизированный 26-байтовый нижний колонтитул 'TRUEVISION-XFILE'.
1984Truevision представляет видеоадаптер TARGA (Truevision Advanced Raster Graphics Adapter) и формат TGA.

Ключевые преимущества и плюсы

  • Чрезвычайно простая архитектура декодирования позволяет напрямую загружать текстуры в память графического процессора с минимальной нагрузкой на центральный процессор.
  • Надежная поддержка 32-битного альфа-канала RGBA сделала его любимцем индустрии для текстур видеоигр, спрайтов и наклеек.
  • Поддерживает как несжатое, так и легкое сжатие RLE без потерь.

Технические ограничения и минусы

  • Больший размер файлов по сравнению с современными форматами сжатых текстур, такими как DDS, KTX2 или PNG.
  • Отсутствие нативного управления цветовыми профилями (нет встроенных профилей ICC).
  • Оригинальные файлы TGA версии 1.0 не имеют стандартизированного сигнатурного байта в нулевой позиции (определяются по полям заголовка и нижнего колонтитула).

Интересные технические факты

  • Формат TGA был создан для захвата кадров телевизионного вещания на ПК IBM до того, как стандартные мониторы ПК вообще могли отображать 24-битный цвет.
  • Файлы TGA 2.0 уникальны тем, что их сигнатурная строка ('TRUEVISION-XFILE.') хранится в самом конце файла, а не в начале.
  • Почти каждый крупный игровой 3D-движок 1990-х годов, от id Tech до Unreal Engine, загружал текстурные ассисты напрямую из файлов .TGA.

Часто задаваемые технические вопросы

Почему разработчики игр любили формат TGA?

Потому что файлы TGA были несжатыми или использовали простой алгоритм RLE, что позволяло игровым движкам загружать 32-битные текстуры и альфа-прозрачность прямо в видеопамять без медленной распаковки.

Как идентифицировать файл TGA без сигнатурных байтов на нулевой позиции?

Современные файлы TGA 2.0 заканчиваются строкой ASCII 'TRUEVISION-XFILE.' в последних 26 байтах файла.

Как конвертировать TGA в PNG?

Вы можете конвертировать текстуры TGA в высококачественные изображения PNG или JPG прямо в своем браузере с помощью File2File.app без передачи данных.