Informacje o plikach TGA
Format TGA (Truevision Graphics Adapter)
TGA (Truevision Graphics Adapter), często nazywany również TARGA (Truevision Advanced Raster Graphics Adapter), to format grafiki rastrowej przeznaczony do przechowywania danych obrazów cyfrowych. Format ten został opracowany[1] w 1984 roku przez firmę AT&T; EPICenter we współpracy z Island Graphics Inc. i służył jako natywny format plików dla kart graficznych TARGA i VISTA – pierwszych kart graficznych do komputerów PC zgodnych z IBM, obsługujących tryby High-Color i True-Color.
Rozwój i standaryzacja
AT&T; EPICenter było wewnętrznym spin-offem firmy AT&T; zajmującym się wprowadzaniem na rynek nowych technologii buforów ramki. Twórcy, Brad Pillow i Bryan Hunt, stworzyli format TGA jako niezależną od sprzętu alternatywę dla formatów specyficznych dla kart, takich jak VDA i IC[1]B. Po wykupieniu firmy przez kadrę kierowniczą w 1987 roku z EPICenter powstała firma Truevision Inc.[1]
Aktualna wersja 2.0 została wyd[2]ana przez Truevision w styczniu 1991 roku. Wersja ta rozszerzyła pierwotny format o opcjonalne struktury: obszar rozszerzeń z metadanymi (autor, data, wartość gamma itp.), obszar deweloperski dla danych specyficznych dla aplikacji oraz stopkę pliku do rozpoz[2]nawania wersji.
Struktura techniczna
Podstawowa struktura pliku TGA składa się z 18-bajtowego nagłówka, po którym następują opcjonalne informacje o obrazie, paleta kolorów (w przypadku obrazów indeksowanych) oraz właściwe dane obraz[2]u. Pliki TGA wykorzystują kolej[2]ność bajtów Little-Endian.
Nagłówek definiuje:
Typ obrazu (color-mapped, true-color, grayscale – w każdym przypadku nieskompresowany lub skompresowany metodą RLE)
Wymiary i położenie obrazu
Liczba bitów na piksel (8, 16, 24 lub 32 bity)[2]
Liczbę bitów atrybutów/alfa
Układ pikseli (od dołu do góry/od góry do dołu, od lewej do prawej/od prawej do lewej) oraz tryb przeplotu (w praktyce zawsze bez przeplotu)[2]
Obsługiwane typy obrazów
TGA definiuje trzy podstawowe typ[2]y:
Pseudo-Color (typ 1): Każda wartość piksela jest indeksem w palecie kolorów z programowalnymi wartościami RGB.
True-Color (typ 2): Każda wartość piksela zawiera bezpośrednio składowe RGB. W przypadku 32 bitów dodaje się 8 bitów dla kanału alfa.
Skala szarości (typ 3): Każda wartość piksela reprezentuje wartość szarości bez palety kolorów.
Wszystkie trzy typy istnieją dodatkowo jako wersje skompresowane metodą RLE (typ 9, 10, 11)[2].
Kompresja RLE
Opcjonalna kompresja Run-Length-Encoding działa z dwoma typ[2]ami pakietów:
Pakiety Run-Length: jeden bajt nagłówka (bit 7 = 1) i pojedyncza wartość piksela, która się powtarza. Dolne 7 bitów koduje liczbę minus 1 (1–128 pikseli na pakiet).
Pakiety surowe: jeden bajt nagłówka (bit 7 = 0), po którym następuje odpowiednia liczba różnych wartości pikseli.
Ważne: w wersji 2.0 pakiety RLE nie mogą wykrac[2]zać poza granice wierszy. Wersja 1.0 nadal na to pozwalała, dlatego czytniki TGA muszą obsługiwać obie wersje. W praktyce widzę pakiety RLE wykraczające poza granice wierszy również w wersji 2.0.
Obszar rozszerzeń (wersja 2.0)
Opcjonalny obszar rozszerzeń obejmuje 495 bajtów ze standardowymi pol[2]ami:
Nazwa autora (40 znaków)
Komentarze autora (4×80 znaków)
Sygnatura daty/czasu (6 wartości SHORT dla miesiąca, dnia, roku, godziny, minuty, sekundy)
Nazwa/identyfikator zadania (40 znaków)
Czas zadania (skumulowany czas w godzinach, minutach, sekundach)
Identyfikator i wersja oprogramowania
Kluczowy kolor (kolor przezroczystości/kolor tła)
Współczynnik proporcji pikseli
Wartość gamma
Wskaźnik do tabeli korekcji kolorów, obrazu znaczka pocztowego i tabeli linii skanowania
Rozpoznawanie wersji
Pliki TGA 2.0 kończą się 26-bajtową stop[2]ką. Bajty 8–23 zawierają sygnaturę ASCII „TRUEVISION-XFILE”, po której następuje kropka (bajt 24) i terminator zerowy (bajt 25). Jeśli brakuje tej sygnatury, mamy do czynienia z formatem oryginalnym (wersja 1.0).
Rozszerzenia plików
Zalecanym standardowym rozszerzeniem jest .tga dla systemów DOS, UNIX i Windows[2]. W klasycznych systemach Macintosh stosowany jest kod typu TPIC. Historycznie istniały również rozszerzenia .vda, .icb i .vst dla określonych typ[2]ów kart graficznych.
Cechy techniczne
W porównaniu z innymi formatami 24-bitowymi struktura TGA jest prosta (ale istnieją też przypadki skrajne): nieskompresowany 24-bitowy plik TGA składa się z 18-bajtowego nagłówka, opcjonalnego identyfikatora obrazu (0–255 bajtów, długość zdefiniowana w bajcie 0 nagłówka)[2], opcjonalnych danych mapy kolorów oraz skompresowanych danych obrazu RGB. BMP wymaga wypełnienia wierszy do granic 4-bajtowych, podczas gdy TIFF i PNG, jako kontenery metadanych, nie mają stałej pozycji dla danych obrazu.
Rozdzielczości obrazów w plikach TGA tradycyjnie odpowiadają formatom wideo NTSC i PAL, ponieważ oryginalne karty TARGA zostały[1] zaprojektowane do profesjonalnej syntezy obrazu komputerowego i edycji wideo. Oczywiście możliwe są również inne rozdzielczości.
Obszary zastosowania
Format TGA jest nadal używany w branży wideo i animacji, ponieważ docelowe wyjście jest przeznaczone głównie na ekrany, a nie do dr[1]uku w wysokiej rozdzielczości. W tworzeniu gier wideo format TGA często służy jako format tekstur, ponieważ obsługuje kanały alfa i działa w trybie nieskompresowanym lub bezstratnym.
Źródła
[1] True Vision TGA – Wikipedia
[2] Truevision Inc. (1991). Truevision TGA File Format Specification Version 2.0
Konwertuj, otwieraj i edytuj pliki TGA
Szczegółowe informacje o plikach TGA
- Typ MIME dla TGA
Brak komentarzy