Format Truevision TGA (.tga)
Specificația StandardTGA (Targa) este un format raster asociat plăcilor de captură video TARGA de la Truevision și folosit în unele fluxuri de lucru pentru grafică și resurse de jocuri, mai ales în anii 1990 și 2000.
Convertește din TGA în PNG
Convertor gratuit din TGA în PNG direct în browser. Convertește fișiere instantaneu pe dispozitivul tău.
Inspectare și metadate
Sistemele de operare și analizatoarele de fișiere identifică fișierele TGA prin inspectarea secvenței binare inițiale:
Semnătura antetului la nivel de octet (octeți magici)
Sistemele de operare și analizatoarele de fișiere identifică fișierele TGA prin inspectarea secvenței binare inițiale:
SEMNĂTURĂ HEXAZECIMALĂ (DECALAJ 0):
Fără semnătură fixăREPREZENTARE ASCII: Fără semnătură fixă
Standardizare: Specificația formatului de fișier Truevision TGA v2.0
Specificații tehnice
| Arhitectură container | Antet fix de 18 octeți, urmat de ID-ul imaginii, harta de culori, datele raster ale pixelilor și subsolul opțional versiunea 2.0 |
| Compresie | Rânduri raster brute necomprimate sau codare RLE fără pierderi, bazată pe pachete |
| Ordinea octeților | Little-Endian (Intel x86) |
| Spații de culoare | RGB specific dispozitivului |
| Canale și structură | Tonuri de gri pe 8 biți, RGB pe 16 biți (5-5-5-1), RGB pe 24 de biți sau RGBA pe 32 de biți cu alfa |
| Dimensiuni maxime | 65.535 x 65.535 de pixeli (câmpuri de dimensiune pe 16 biți) |
| Transparență | Canal alfa variabil pe 8 biți (în modul pe 32 de biți) sau alfa pe 1 bit (în modul pe 16 biți) |
| Streaming și progresiv | Procesare secvențială în flux a rândurilor; acceptă orientarea de sus în jos sau de jos în sus |
Matrice de comparație tehnică: TGA vs. concurenți
| Atribut tehnic | TGA (Curent) | PNG | BMP | DDS |
|---|---|---|---|---|
| Utilizarea texturilor în jocuri video | Folosit de unele motoare de jocuri din anii 1990-2000 | Interfețe 2D moderne și elemente web | Bitmap moștenit Windows | Format modern comprimat GPU DirectX |
| Suport pentru canalul alfa | Alfa curat pe 8 biți (mod pe 32 de biți) | Alfa curat pe 8 biți | Alfa limitat pe 32 de biți | Alfa comprimat DXT/BC |
| Algoritm de compresie | Necomprimat sau Packet RLE | Compresie Deflate fără pierderi; economia de spațiu depinde de conținutul imaginii | Necomprimat / RLE | Compresie directă în blocuri GPU (BC1-BC7) |
| Locația semnăturii | Subsol de 26 de octeți ('TRUEVISION-XFILE.') | Antet la octetul 0 ('‰PNG....') | Antet la octetul 0 ('BM') | Antet la octetul 0 ('DDS ') |
Moduri comune de corupție și ghid de recuperare hexazecimală
Imaginea se randează cu capul în jos sau oglindită orizontal.
Cauză principală: Biții descriptorului de imagine (biții 4 și 5 din octetul 17) sunt citiți greșit sau inversați de decodor.
Recuperare: Comută fanioanele de răsturnare verticală/orizontală sau convertește fișierul folosind File2File.app TGA Converter.
Analiză de securitate și vectori de atac asupra parserului
Decodorii TGA procesează fluxuri RLE bazate pe pachete unde valorile malformate ale lungimii secvențelor pot declanșa scrieri în memorie (heap) în afara limitelor.
Vectori de atac cunoscuți
- Lungimea pachetului RLE care depășește limita tamponului destinat liniei de scanare.
- Depășire de tampon la citirea intrărilor din paleta de culori care depășesc adâncimea declarată a hărții de culori.
- Depășire de întreg în timpul alocării tamponului de memorie lățime * înălțime * (bpp / 8).
Cele mai bune practici de securitate: Aplică verificări stricte ale limitelor pentru fiecare rând în timpul despachetării pachetelor RLE.
Origini istorice și repere
Avantaje cheie și beneficii
- Arhitectura de decodare extrem de simplă permite încărcarea directă în memoria de texturi a GPU-ului cu un efort minim din partea procesorului.
- TGA poate stoca date RGB pe 24 de biți sau RGBA pe 32 de biți, inclusiv canalul alfa, fiind util în unele fluxuri de lucru pentru texturi, sprite-uri și decalcomanii de jocuri.
- Suportă atât date necomprimate, cât și compresie RLE fără pierderi, de dimensiuni reduse.
Limitări tehnice și dezavantaje
- Amprente de fișier mai mari decât formatele moderne de texturi comprimate precum DDS, KTX2 sau PNG.
- Lipsește managementul nativ al profilului de culoare (fără profiluri ICC încorporate).
- Fișierele TGA originale v1.0 nu au un octet magic standardizat la octetul 0 (identificat prin câmpurile antetului și subsol).
Curiozități tehnice interesante
- TGA a fost creat pentru a captura cadre video de televiziune pe un PC IBM înainte ca monitoarele PC standard să poată afișa măcar culori pe 24 de biți.
- Fișierele TGA 2.0 sunt unice deoarece semnătura lor magică ('TRUEVISION-XFILE.') este stocată chiar la sfârșitul fișierului în loc de început.
- Unele motoare de jocuri din anii 1990 au folosit TGA pentru texturi, inclusiv jocuri de la id Software și Valve.
Întrebări tehnice frecvente
De ce au iubit dezvoltatorii de jocuri formatul TGA?
Deoarece fișierele TGA erau necomprimate sau foloseau RLE simplu, permițând motoarelor de joc să încarce texturi pe 32 de biți și transparență alfa direct în memoria video fără o decompresie lentă.
Cum identific un fișier TGA fără octeți de identificare la octetul 0?
Fișierele TGA 2.0 moderne se termină cu șirul ASCII „TRUEVISION-XFILE.” în ultimele 26 de octeți ai fișierului.
Cum pot converti TGA în PNG?
Fișierele TGA pot conține un canal alfa folosit de texturile jocurilor. Convertește-le în PNG pentru a păstra transparența sau în JPEG pentru o imagine opacă mai mică; acest convertor rulează în browserul tău.
Perechi de conversie TGA conexe
Decodifică texturi Truevision TGA pentru jocuri, pe 24 și 32 de biți, și grafică raster în formatul PNG fără pierderi, acceptat pe scară largă.
Transformă o textură sau un sprite TGA într-un PDF de o pagină pentru o analiză de design. Pagina afișează pixelii decodați, nu date TGA editabile sau codificarea pachetelor.