Truevision TGA (.tga)

Spesifikasjon Standard

TGA (Targa) er et rasterformat knyttet til Truevisions TARGA-videokort og ble brukt i enkelte arbeidsflyter for grafikk og spillressurser, særlig på 1990- og 2000-tallet.

Konverter TGA til PNG

Gratis TGA til PNG-konverterer i nettleseren. Konverter filer umiddelbart på enheten din.

Inspeksjon og metadata

Operativsystemer og filanalysatorer identifiserer TGA-filer ved å undersøke den innledende binære bytesekvensen:

Velg eller slipp filer her

Privat - filer forlater aldri enheten din

eller lim inn Ctrl+V
Personverngaranti uten nettverksoverføring: 0 byte ble lastet opp til eksterne servere. All behandling foregikk lokalt i det isolerte nettlesermiljøet ditt.

Filsignatur på bytenivå (magiske byte)

Operativsystemer og filanalysatorer identifiserer TGA-filer ved å undersøke den innledende binære bytesekvensen:

HEX-SIGNATUR (OFFSET 0):

Ingen fast signatur (TGA-headerfeltene varierer)

ASCII-REPRESENTASJON: Ingen fast signatur

Standardisering: Spesifikasjon for Truevision TGA-filformat, versjon 2.0

Tekniske spesifikasjoner

BeholderarkitekturFast 18-byte header fulgt av bilde-ID, fargekart, rasterpikseldata og valgfri v2.0-bunntekst
KomprimeringUkomprimerte rå skannelinjer eller tapsfri pakkebasert koding med rekkelengder (RLE)
BytterekkefølgeLittle-endian (Intel x86)
FargeromEnhets-RGB
Kanaler og struktur8-bits gråtone, 16-bits RGB (5-5-5-1), 24-bits RGB eller 32-bits RGBA med alfa
Maks. dimensjoner65 535 x 65 535 piksler (16-bits dimensjonsfelt)
GjennomsiktighetFull gjennomsiktighet med 8-bits alfakanal (i 32-bits modus) eller 1-bits alfa (i 16-bits modus)
Strømming og progressiv visningSekvensiell strømming av skannelinjer; støtter retning ovenfra og ned eller nedenfra og opp

Teknisk sammenligningsmatrise: TGA sammenlignet med konkurrenter

Teknisk attributtTGA (Gjeldende)PNGBMPDDS
Bruk av videospillteksturBrukt av enkelte spillmotorer fra 1990- og 2000-talletModerne 2D-grensesnitt og nettressurserEldre Windows-bitmapDirektesendt moderne komprimert GPU-format fra DirectX
Støtte for alfakanalRen 8-bits alfa (32-bits modus)Ren 8-bits alfaBegrenset 32-bits alfaDXT/BC-komprimert alfa
KomprimeringsalgoritmeUkomprimert eller pakkebasert RLETapsfri Deflate-komprimering; besparelsen varierer med bildeinnholdetUkomprimert / RLEDirekte GPU-blokkompresjon (BC1-BC7)
Plassering av signaturBunntekst på 26 byte ('TRUEVISION-XFILE.')Byte 0 hode ('‰PNG....')Byte 0 hode ('BM')Byte 0 hode ('DDS ')

Vanlige korrupsjonsmoduser og heksadesimal gjenopprettingsveiledning

Bildet gjengis opp ned eller speilvendt horisontalt.

Underliggende årsak: Bildedeskriptorbiter (bit 4 og 5 i byte 17) feiltolket eller invertert av avkoderen.

Utbedring: Slå av/på vertikale/horisontale speilingsflagg eller konverter ved hjelp av File2File.app TGA-omformer.

Sikkerhetsanalyse og angrepsvektorer mot parsere

TGA-avkodere behandler pakkebaserte RLE-strømmer der feilaktige løpelengdeverdier kan utløse skriving til heap-minnet utenfor grensene.

Kjente angrepsvektorer

  • RLE-pakkelengde som overskrider grensene for bufferet til måleskannelinjen.
  • Bufferoverløp ved lesing av fargekartoppføringer som overstiger den oppgitte fargekartdybden.
  • Heltallsoverløp under minnebufferallokering for bredde * høyde * (bpp / 8).

Anbefalte sikkerhetstiltak: Håndhev streng grensekontroll for hver skannelinje under utpakking av RLE-pakker.

Historisk opprinnelse og milepæler

1998TGA ble vanlig i spillgrafikkarbeidsflyter fordi formatet støtter direkte fargedata og alfadata; spillmotorer, blant annet Quake II fra id Software, brukte det til teksturer.
1989Truevision lanserer TGA File Format v2.0, som legger til den standardiserte bunnteksten på 26 byte, 'TRUEVISION-XFILE'.
1984Truevision introduserer TARGA-videokortet (Truevision Advanced Raster Graphics Adapter) og TGA-formatet.

Viktige fordeler

  • Ekstremt enkel avkodingsarkitektur tillater direkte lasting til GPU-teksturminne med minimal prosessorbelastning (CPU).
  • TGA kan lagre 24-bit RGB- eller 32-bit RGBA-data, inkludert alfakanal, og var derfor nyttig i enkelte arbeidsflyter for spillteksturer, sprites og dekaler.
  • Støtter både ukomprimert lagring og lett tapsfri RLE-komprimering.

Tekniske begrensninger og ulemper

  • Større filstørrelser enn moderne komprimerte teksturformater som DDS, KTX2 eller PNG.
  • Mangler innebygd fargeprofilhåndtering (ingen innebygde ICC-profiler).
  • Originale v1.0 TGA-filer mangler en standardisert magisk byte på byte 0 (identifiseres via headerfelter og bunntekst).

Interessante tekniske fakta

  • TGA ble opprettet for å fange opp kringkastingsvideobilder på IBM PC før standard PC-skjermer i det hele tatt kunne vise 24-bits farger.
  • TGA 2.0-filer er unike fordi deres magiske signatur ('TRUEVISION-XFILE.') er lagret helt på slutten av filen i stedet for i begynnelsen.
  • TGA ble brukt til teksturer i enkelte spillmotorer fra 1990-tallet, blant annet spill fra id Software og Valve.

Ofte stilte tekniske spørsmål

Hvorfor elsket spillutviklere TGA-formatet?

Fordi TGA-filer var ukomprimerte eller enkle RLE, noe som gjorde at spillmotorer kunne laste inn 32-biters teksturer og alfagjennomsiktighet direkte inn i videominnet uten langsom dekompresjon.

Hvordan identifiserer jeg en TGA-fil uten magiske byte på byte 0?

Moderne TGA 2.0-filer slutter med ASCII-strengen 'TRUEVISION-XFILE.' i de siste 26 bytene av filen.

Hvordan kan jeg konvertere TGA til PNG?

TGA-filer kan inneholde alfakanal brukt av spillteksturer. Konverter til PNG for å bevare gjennomsiktighet eller til JPEG for et mindre, ugjennomsiktig bilde; denne konverteren kjører i nettleseren.